Faire disparaitre une macro

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

H

Hady

Guest
Bonjour @ tous et @ toutes,

Ma question est relativement simple mais je n'ai pas trouvé l'info. Est-il possible de faire disparaitre une macro?

Je m'explique dans MS VB, j'ai un certain nombre de macro. Parmi ces macros, un certain nombre n'est utilisé que par le biais d'autres macros. Ce que je voudrais c'est que ces sous-programmes n'apparaissent pas dans Excel menu 'Outils>Macro>Macros...' : je voudrais les faire disparaitre. J'espère que c'est possible.

Merci @ tous
 
Click droit insertion 'module de classe'

Et la les macros n'apparaissent pas dans 'Outils>Macro>Macros...'

En fait je ne sais pas à quoi sert 'modules de classe', ca sert peut être à ça?

Quelqu'un peut confirmer?
 
oui, c'est simple, en haut de ton module, juste en dessous de Option Explicit (qui devrait être - pour tous - la première ligne par défaut de tout module) tu mets l'instruction : Option Private Module
Et voilà.

Evidemment si tu ne travailles pas en Option Explicit (ce que je ne conseille pas), Option Private Module sera alors placé en première ligne du module...
 
C'est génial ça marche!
Mille mercis!

Autre question... J'ai mis mon classeur en lecture seule avec un code. Seulement même si on ouvre le classeuren lecture seule, on peut l'enregistrer sous un autre nom et se le récupérer sans code : C'est très embêtant. Je voudrais aussi empêcher les utilisateurs d'avoir accès au code VBA... Comment faire?
Je ne veux pas protéger les cellules de mon classeur par contre. Je n'ai rien trouvé de réellement satisfaisant.
 
regarde dans l'aide:
Private Sub Workbook_BeforeSave(ByVal SaveAsUi As Boolean, Cancel As Boolean)
(à coller dans 'thisWorkBook')

tu dois pouvoir empecher d'enregistrer, mais je ne sais pas faire



clic droit sur le nom du projet / propriété du projet / protection et verrouiller le projet
 
'Private Sub Workbook_BeforeSave(ByVal SaveAsUi As Boolean, Cancel As Boolean)' me permet d'exécuter une macro avant qu'un utilisateur sauvegarde mais comme tu l'as dit toi même, je ne vois pas comment bloquer l'enregistrement : ma macro s'éxécute et la personne peut sauvegarder quand même. Et puis si l'on crée une copie du fichier dans l'explorer sans ouvrir excel ça fait sauter la protection du coup ça ne me parait pas suffsant : ça peut être un premier pas.


Sinon le 'clic droit sur le nom du projet / propriété du projet / protection et verrouiller le projet[/quote]' protège très bien le code dans tous les cas!
 
Si tu veux simplement empêcher l'utilisateur de faire des actions maladroites qui risquent d'empêcher le bon fonctionnement de ton programme, alors la méthode du :

Private Sub Workbook_BeforeSave(ByVal SaveAsUi As Boolean, Cancel As Boolean)
Cancel=True
End Sub

et de la protection du fichier et/ou des feuilles, même sans mots de passe, me paraissent suffisantes. Cependant, si tu veux empêcher qu'on aille voir le code de ton programme ou qu'on déprotège le fichier, alors c'est peine perdue, il suffit d'ouvrir le fichier sans activer les macros, et on peut faire à peu près tout ce qu'on veut de n'importe quel fichier Excel, quelles que soient les protections qu'on y a mises.

Pour en revenir aux préventions contre les actions maladroites, il me semble qu'une mise en garde placée bien visiblement soit déjà une bonne chose. Ensuite rien n'empêche un utilisateur d'être crétin et de ne pas suivre ces mises en garde, mais alors ce sera tant pis pour lui.
 
Merci de ta réponse! 🙂
Tant pis alors je maintiendrais ma hotline aux utilisateurs. De toute façon, le fait que j'ai empêché la modification du code VBA est déjà une excellente chose. Tant pis pour la lecture seule!

Merci encore à tous les acteurs de ce forum
 
- 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

D
  • Question Question
Réponses
5
Affichages
246
Didierpasdoué
D
  • Question Question
Microsoft 365 Power Query
Réponses
8
Affichages
393
Retour