Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Bloquer un macro si classeur partagé

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

J

jongi

Guest
Bonjour,

J'ai un classeur avec quelques macros, classeur qui est ponctuellement partagé entre une quinzaines d'utilisateurs afin qu'ils remplissent quelques données.

Afin d'éviter les erreurs je souhaite empêcher l'exécution de certaines macros lorsque le classeur est en partage. Les macros à empêcher se trouvent dans Private Sub Worksheet_Activate(), sachant qu'il y a une feuille par utilisateur.

Merci d'avance de vos réponses
 
Re : Bloquer un macro si classeur partagé

bonjour,

plutôt qu'une usine à gaz, pourquoi ne pas chercher le nom de la personne qui utilise le classeur, et en fonction du nom, dérouler le code ou non?

du style :

Code:
Private Sub Worksheet_Activate()
If Application.UserName <> "bibi" Then Exit Sub
'ton code
End Sub

remplace "bibi", par ton username (que tu peux retrouver facilement, en mettant dans un module : x = Application.UserName)

bonne journée
 
Re : Bloquer un macro si classeur partagé

Merci BHBH, j'y avais pensé mais souhaitait un code "plus sûr", car certains de mes utilisateurs pourraient aisément trouver la faille.
 
Re : Bloquer un macro si classeur partagé

Re-,

certains de mes utilisateurs pourraient aisément trouver la faille.

Et en mettant un mot de passe à ton code?

si tes utilisateurs trouvent également la faille, (pas trop dur, mais faut quand même connaître un minimum), ben, y'aura pas grand chose d'autre à faire....

Bon courage
 
Re : Bloquer un macro si classeur partagé

En fait j'ai trouvé une parade, pour ce classeur, je masque le menu "Outils" à l'ouverture, et je le ré-active à la fermeture.

If CommandBars(1).Controls("&Outils").Visible = True Then
CommandBars(1).Controls("&Outils").Visible = False
Else
End If
 
Re : Bloquer un macro si classeur partagé

Re-,

Pourquoi masquer "Outils"?

Pour ne pas que tes fins limiers fassent "Outils/Macro......"

Alt + F11 ouvre l'éditeur, avec ou sans "Outils"....

Bonne journée
 
Re : Bloquer un macro si classeur partagé

Re---;

Oui, mais pas si le code est protégé par mot de passe, comme tu me le disais juste avant. J'en ai aussi profité pour masquer le menu "Insérer", qui m'a causé quelques problèmes par le passé.

Je sais que ce n'est pas très orthodoxe comme méthode, mais ça à l'air de fonctionner.

Pour moi l'idéal était simplement de vérifier si le classeur est en partage, si c'est le cas, on empêche l'exécution de certaines macro réservée au propriétaire du fichier (moi en l'occurence).
 
Re : Bloquer un macro si classeur partagé

Re-,

Là, je crois que tu prends un semi-remorque pour livrer un sucre.....

Si tu as eu des soucis à cause de ces deux menus, peut-être que c'est ton code qui présente quelques failles....

M'enfin, si tu préfères cette manière "empirique", libre à toi....

@+
 
Re : Bloquer un macro si classeur partagé

J'avoue que j'ai tendance à être un peu "possessif" avec mes classeurs 🙂)

Mais à part cette manière "barbare", je vois pas trop comment empêcher l'insertion d'images ou autres dans excel...
 
- 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

M
  • Question Question
Réponses
2
Affichages
1 K
MiaouLeLion
M
C
Réponses
0
Affichages
1 K
cptass71
C
P
Réponses
0
Affichages
915
pierik59
P
B
  • Question Question
Réponses
36
Affichages
6 K
Blueberry-60
B
S
Réponses
3
Affichages
1 K
samanthasauvestre
S
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…