Interdire l'enregistrement d'un classeur?

  • Initiateur de la discussion Initiateur de la discussion bencourriel
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

B

bencourriel

Guest
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. 😉
 
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
 
Bonsoir Marc, le forum,

Merci pour cette info Marc. C'est super intéressant.

Toutefois, si je voudrais interdire Enregistrer tout court, que dois-je modifier dans ces lignes de codes?

Merci encore. Bonne fin de soirée. 😉
 
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
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

J
Réponses
11
Affichages
5 K
jahsoldier
J
R
Réponses
2
Affichages
3 K
rofou13
R
L
Réponses
5
Affichages
2 K
lumiexcel
L
Réponses
1
Affichages
43 K
Compte Supprimé 979
C
H
Réponses
3
Affichages
1 K
helencompta
H
D
Réponses
2
Affichages
2 K
D
Retour