Bonjour à tous,
Je déterre ce post, qui se rapproche beaucoup de ce que je désire faire.
J'ai créé un classeur sous Excel 2010 qui doit être enregistré dans un répertoire précis sur le réseau de mon entreprise et sous un nom dépendant de plusieurs variables (Date, Range, ...). J'ai donc créé un bouton pour le permettre.
De ce côté là pas de problème, c'est plutôt le fait d'empêcher les utilisateurs d'enregistrer d'une autre manière qui me cause des soucis (Disquette Enregistrer dans le ruban, Onglet Fichier, ou encore Ctrl+S).
J'ai essayé le code de Chouks que j'ai mis dans ThisWorkbook Open, tout en veillant à faire l'inverse dans BeforeClose pour éviter le déagrément qu'à recontré krlblz mais il ne marche pas.
Version d'Excel, mauvaise adaptation du code, ... Je ne sais pas vraiment quel est mon pb.
Voici le code :
J'y ai mis la désactivation du Ctrl+S en commentaire, étant donné que je ne sais pas comment le réactiver.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 Private Sub Workbook_BeforeClose(Cancel As Boolean) 'Désactive le menu "Fichier" et la disquette dans le ruban With Application.CommandBars("Standard") .Controls("Enregistrer").Enabled = True End With With Application.CommandBars("Worksheet Menu Bar") .Controls("Fichier").Enabled = True End With ''Désactive le raccourci clavier Ctrl+S 'Application.OnKey "^s", "" End Sub Private Sub Workbook_Open() 'Désactive le menu "Fichier" et la disquette dans le ruban With Application.CommandBars("Standard") .Controls("Enregistrer").Enabled = False End With With Application.CommandBars("Worksheet Menu Bar") .Controls("Fichier").Enabled = False End With ''Désactive le raccourci clavier Ctrl+S 'Application.OnKey "^s", "" End Sub
Merci beaucoup d'avance pour votre aide
Partager