Invite «comment supprimer les modifications enregistrées» lorsque vous fermez un classeur dans Excel

Remarque : Nous faisons de notre mieux pour vous fournir le contenu d’aide le plus récent aussi rapidement que possible dans votre langue. Cette page a été traduite automatiquement et peut donc contenir des erreurs grammaticales ou des imprécisions. Notre objectif est de faire en sorte que ce contenu vous soit utile. Pouvez-vous nous indiquer en bas de page si ces informations vous ont aidé ? Voici l’article en anglais à des fins de référence aisée.

Résumé

Dans Microsoft Excel, vous pouvez créer une macro Microsoft Visual Basic pour applications (VBA) qui supprime l'invite enregistrer les modifications lors de la fermeture d'un classeur. Pour ce faire, vous pouvez spécifier l'état de la propriété classeur enregistré ou supprimer toutes les alertes pour le classeur.

Informations complémentaires

CommentaireMicrosoft fournit des exemples de programmation à des fins d'illustration uniquement, sans garantie expresse ou implicite. Cela inclut, mais sans s'y limiter, les garanties implicites de qualité marchande ou d'adéquation à un but particulier. Cet article part du principe que vous connaissez le langage de programmation présenté et les outils utilisés pour créer et déboguer des procédures. Les ingénieurs du support Microsoft peuvent vous aider à expliquer les fonctionnalités d'une procédure particulière. Toutefois, ils ne modifieront pas ces exemples pour fournir des fonctionnalités ajoutées ou des procédures de construction adaptées à vos besoins spécifiques. 

Pour préparer l'implémentation de l'un ou l'autre des exemples ci-dessous, procédez d'abord comme suit:

  1. Démarrez Excel et ouvrez un nouveau classeur.

  2. Appuyez sur ALT + F11 pour démarrer Visual Basic Editor.

  3. Dans le menu insertion , cliquez sur module.

  4. Tapez l'exemple de code de macro dans la feuille de module.

  5. Appuyez sur ALT + F11 pour revenir à Excel.

  6. Dans Microsoft Office Excel 2003 et dans les versions antérieures d'Excel, sélectionnez macro dans le menu Outils , puis cliquez sur macros.

    Dans Microsoft Office Excel 2007, cliquez sur macros dans le groupe code de l'onglet développeur

    Si l'onglet développeur n'est pas disponible, procédez comme

    suit:     un. Cliquez sur le bouton Microsoft Office , puis sur Options Excel.

    c. Dans la catégorie populaire , sous meilleures options pour travailler avec Excel, cliquez pour sélectionner le Diaporama
    .         Onglet Développeur dans le ruban
    , puis cliquez sur OK.

  7. Sélectionnez la macro souhaitée, puis cliquez sur exécuter.

La propriété saved renvoie la valeur false si des modifications ont été apportées à un classeur depuis son dernier enregistrement.

Vous pouvez utiliser le nom de sous-programme Auto_Close réservé pour spécifier une macro qui s'exécute chaque fois qu'un classeur est fermé. Vous pouvez ainsi contrôler le mode de gestion du document lorsque l'utilisateur ferme les documents dans Excel.
 

Exemple 1: fermer le classeur sans enregistrer les modifications

Pour forcer la fermeture d'un classeur sans enregistrer les modifications, tapez le code suivant dans un module Visual Basic de ce classeur:
 

    Sub Auto_Close ()

        ThisWorkbook. Saved = true

    End Sub

Lorsque la propriété saved a la valeur true, Excel répond comme si le classeur ait déjà été enregistré et aucune modification n'a eu lieu depuis le dernier enregistrement.


La propriété DisplayAlerts du programme peut être utilisée dans le même but. Par exemple, la macro suivante désactive la fonction wdAlertsNone , ferme le classeur actif sans enregistrer les modifications, puis réactive la classe DisplayAlerts .
 

    Sub CloseBook ()

        Application. DisplayAlerts = false

        ActiveWorkbook. Close

        Application. DisplayAlerts = true

    End Sub

Vous pouvez également utiliser l'argument SaveChanges de la méthode Close .

La macro suivante ferme le classeur sans enregistrer les modifications:
 

    Sub CloseBook2()

        ActiveWorkbook.Close savechanges:=False

    End Sub

Exemple 2: fermer le classeur et enregistrer les modifications

Pour forcer l'enregistrement des modifications dans un classeur, tapez le code suivant dans un module Visual Basic de ce classeur:
 

    Sub Auto_Close ()

        Si ThisWorkbook. Saved = false, alors

            ThisWorkbook. Save End If

    End Sub

Cette sous-procédure vérifie si la propriété saved du fichier a été définie sur false. Si tel est le cas, le classeur a été modifié depuis le dernier enregistrement, et ces modifications sont enregistrées.

Développez vos compétences dans Office
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×