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

Lancement Macro en fonction du nom de classeur

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

E

Eric D

Guest
Bonjour,

Je souhaiterais avoir la possibilité d'exécuter une macro seulement si le classeur actif porte un nom bien précis (ex: Toto.xls).
Si le classeur actif porte un nom différent, il faudrait donc interdire le lancement.

Est-ce réalisable ?

Merci pour vos réponses.
Eric
 
Essaies ceci, c'est pas forcément le plus élégant mais ça devrait marcher...


Sub Macro()
If ActiveWorkbook.Name = "toto.xls" Then

'mets ta macro ici

Else
GoTo 1
End If
1
End Sub


Bon courage,

Maraboul
 
Bonjour Maraboul, Eric, le Forum

Tout va très bien dans cette macro Maraboul, la syntax est correcte, la seule chose qui me chiffonne c'est le GoTo qui, de plus ne sert pas du tout dans ce cas de figure.

Ceci suffit amplement :
Sub Macro()
If ActiveWorkbook.Name = "toto.xls" Then
'mets ta macro ici
End If
End Sub

En fait avec un "If", on est pas obligé d'avoir une alternative "Else", ce que tu sembles vouloir faire.

On peut même faire l'opposé, ce qui correspondrait encore mieux en retranscription litéral en VBA de la demande d'Eric "Si le classeur actif porte un nom différent, il faudrait donc interdire le lancement" :

Sub Macro()
If ActiveWorkbook.Name <> "toto.xls" Then Exit Sub

'mets ta macro ici
End Sub

Bonne Fin de Journée
@+Thierry
 
Bonjour!!

J'ai une question qui se rapproche un peu de ce point la:

En fait, je voudrais savoir comment lancer une macro qui se trouve dans un autre classeur.

En gros, j'ai un truc qui marche:
-----------------------------------------------
Run ("monclasseur.xls!mamacro")
-----------------------------------------------
Cela signifie que je lance mamacro qui est contenue dans monclasseur.xls a partir d'un autre classeur

mais comment peut-on faire pour faire la meme chose en sachant que le nom de classeur est variable?

run(fichier!mamacro) ne fonctionne pas...

merci pour votre aide!!
 
Bonjour!!

J'ai une question qui se rapproche un peu de ce point la:

En fait, je voudrais savoir comment lancer une macro qui se trouve dans un autre classeur.

En gros, j'ai un truc qui marche:
-----------------------------------------------
Run ("monclasseur.xls!mamacro")
-----------------------------------------------
Cela signifie que je lance mamacro qui est contenue dans monclasseur.xls a partir d'un autre classeur

mais comment peut-on faire pour faire la meme chose en sachant que le nom de classeur est variable?

run(fichier!mamacro) ne fonctionne pas...

merci pour votre aide!!
 
- 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
869
Réponses
20
Affichages
970
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…