Astuce VBA : empêcher l'enregistrement d'un fichier Excel

Si vous avez créé un fichier qui nécessite l'activation des macros pour fonctionner et que vous souhaitez interdire l'enregistrement de modifications, c'est possible et ça ne prend qu'un instant.


Ouvrez votre fichier sans activer les macros (ou en activant le "Mode Création") et collez le code suivant dans ThisWorkbook :

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    Cancel = True 'Annule les demandes d'enregistrement
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Application.ThisWorkbook.Saved = True 'Informe Excel que le fichier a déjà été enregistré (cela évite d'avoir une demande d'enregistrement à la fermeture)
End Sub

Il ne vous reste plus qu'à enregistrer votre fichier (vous pouvez toujours l'enregistrer tant que les macros sont désactivées).

Explication détaillée

Pour mieux comprendre cette astuce VBA, visionnez la vidéo suivante :