désactiver l'enregistrement

  • Initiateur de la discussion Initiateur de la discussion Didier M
  • 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 !

D

Didier M

Guest
Dans un classeur Excel, je voudrais que l'utilisateur ne puisse pas enregistrer le classeur mais soit obligé "d'enregistrer sous" un autre nom.
Comment désactiver la fonction Fichier->Enregistrer
Didier
 
Salut Didier,

Ben faut supprimer cette option des barre d'outils... du Menus et des raccourcis clavier (CTRL S)... Avec un code VBA à l'ouverture du fichier...

Soit plus simplement enregistrer le fichier en mode "ReadOnly" (Enregistrer sous / Bouton Outil à Droite / Puis option générales.... Lecture Seule recommandée... password ou pas password...

Soit aussi enregistrer le fichier orginal en XLT (modèles)...

Tu as le choix!
Bon Week End
@+Thierry
 
Merci Thierry.
Mais quel code utiliser à l'ouverture du fichier pour
- désactiver l'icone Enregistrer ?
- désactiver les touches Ctrl S ?

Pour désactiver au menu, j'utilise :
Application.CommandBars("file").Controls(4).Enabled = False
ça a l'air de marcher.....


didier
 
Il me semble que cette solution soit un peu trop "radicale". Il est toujours risqué de supprimer ainsi une commande qui peut être par ailleurs nécessaire dans le même temps pour d'autres fichiers. Tu pourrais plutôt essayer d'utiliser une procédure événementielle before_save.

De toute façon, en obligeant l'utilisateur à passer par SaveAs, tu ne lui interdira pas de donner le même nom au fichier qu'il veut sauvegarder, tu te retrouves donc à ton point de départ.
 
Le code pour rendre inaccessible l'item Outils, Protection.
Sub InhibeOutilsProtection()
CommandBars(1).Controls(6).Controls(6).Enabled = False
End Sub


Le code pour rendre accessible l'item Outils, Protection.
Sub AfficheOutilsProtection()
CommandBars(1).Controls(6).Controls(6).Enabled = True
End Sub

Ce n'est pas de moi.

Il te suffit d'adapter selon le menu ou l'option menu que tu veux changer.

@ +

Moa
 
Bonjour Didier, Ti et Moa, et le Forum

Je suis de l'avis de Ti, c'est très radical. L'enregistrement du fichier en ReadOnly devrait largement suffir...

Mais si tu veux vraiment vérouiller aussi les touches clavier pour CTRL S, la méthode "Onkey" le fait. (Voir l'aide).

Pour les "CommandBar" tu as déjà les réponses.

Bon Samedi (Pluvieux...ici)
@+Thierry
 
bonjour

tu peux empêcher une désactivation de ces commandes à l'ouverture du classeur en question
dans une procédure workbook_open

mais pense à rétablir leur fonctionnement dans une procédure workbook_beforeclose


With Application
.CommandBars(1).Controls(1).Controls("&Enregistrer sous...").Enabled =
False
.OnKey "^{s}", ""

End With


il y a aussi les raccourcis F12 & Shift 12 à désactiver

bye
Stéphane
 
- 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

Réponses
4
Affichages
197
Réponses
9
Affichages
186
  • Question Question
XL 2019 User Form
Réponses
9
Affichages
357
Réponses
4
Affichages
377
Retour