Interdire l'enregistrement d'un classeur?

bencourriel

XLDnaute Occasionnel
Bonjour à tous,

Existe-t-il une façon d'empêcher un usager d'enregistrer les modifications faites sur un classeur?

À titre d'exemple :
J'ai un fichier ABC.xls que l'on peut consulter en commencant par la feuille Feuil1 et naviguer à différents endroits dans le classeur. Lorsque l'usager ferme le fichier, je ne veux pas écraser la configuration initiale du fichier ABC.xls. C'est à dire, les données initiales et la première feuille active du fichier.

Merci à l'avance de votre temps. ;)
 
M

Marc_du_78

Guest
Bonsoir bencourrie, le Forum,

D'après fichier de papynovice

INTERDIRE ENREGISTRER SOUS.

De : _Thierry sur Excel-Downloads.

Code à mettre dans le Private Module de 'ThisWorkBook'

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
' SaveAsUI est VRAI si on vient de Fichier / Enregistrer sous
' et FAUX si on vient de Fichier / Enregistrer
' si on met Cancel à VRAI, l'enregistrement n'a pas lieu
If SaveAsUI = True Then
MsgBox 'Le changement de nom est interdit !', vbExclamation + vbOKOnly, 'Attention'
Cancel = True
End If
End Sub

On a plus le droit de faire Sauver Sous (donc pas de possibilité de changer de nom). Ceci n'est valable que depuis le fichier ouvert dans Excel. Mais celà n'empêche pas de sauver le fichier fermé sous un autre nom depuis l'explorateur de Windows.

En espérant que cela te conviendra
Amicalement
 

bencourriel

XLDnaute Occasionnel
En jouant un brin avec le code, j'ai compris qu'il fallait remplacer la ligne :
If SaveAsUI = True Then

Par la ligne :
If SaveAsUI = False Then

...si je veux interdire l'enregistrement tout court.

MERCI! :)

Si un usager désactive les macros, il peut maintenant enregistrer... y a-t-il un moyen de contourner ce problème?

Message édité par: bencourriel, à: 27/10/2005 03:04

Message édité par: bencourriel, à: 27/10/2005 03:09
 

Discussions similaires

Réponses
1
Affichages
43 K
Compte Supprimé 979
C
D
Réponses
2
Affichages
1 K
D