Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

lancer une macro d'un classeur à partir de vba

4 réponses
Avatar
Michel Voirain
Bonjour à tous,
Je souhaite lancer une macro à partir de vba. L'enregistreur de macros m'a
pondu ceci :
Application.Run "'monclasseur.xls'!nomdelamacro"
Je voudrais écrire Application.Run mamacro où mamacro =
"'monclasseur.xls'!nomdelamacro"
Je cale pour écrire ça correctement !
Merci à tous,
Michel Voirain

4 réponses

Avatar
JLuc
Michel Voirain avait soumis l'idée :
Bonjour à tous,
Je souhaite lancer une macro à partir de vba. L'enregistreur de macros m'a
pondu ceci :
Application.Run "'monclasseur.xls'!nomdelamacro"
Je voudrais écrire Application.Run mamacro où mamacro =
"'monclasseur.xls'!nomdelamacro"
Je cale pour écrire ça correctement !
Merci à tous,
Michel Voirain


Si la macro est dans le fichier sur lequel tu travaille, :
...
nomdelamacro
...
suffit
JLuc

Avatar
Mousnynao
Bjr,

Application.Run ("TestFeuille.xls!TestFeuille")

où TestFeuille.xls est le nom du fichier
et TestFeuille est le nom de la macro

n.b. vous devrez refermer le classeur !

Workbooks("TestFeuille.xls").Close

mousnynao


Bonjour à tous,
Je souhaite lancer une macro à partir de vba. L'enregistreur de macros m'a
pondu ceci :
Application.Run "'monclasseur.xls'!nomdelamacro"
Je voudrais écrire Application.Run mamacro où mamacro =
"'monclasseur.xls'!nomdelamacro"
Je cale pour écrire ça correctement !
Merci à tous,
Michel Voirain





Avatar
jeclephi
Bonsoir Michel Voirain,
si je comprends bien ta question tu veux affecter ta macro à une variable
(ce que tu écris dans: "mamacro = "monclasseur.xls'!nomdelamacro", si c'est
ça tu y étais pratiquement, faut faire attention aux apostrophes et
guillemets
je te propose ceci:

Sub essai()
Dim masub As String 'variable
masub = "Classeur1!Feuil1.Macro1" 'dans cet exemple la macro1 se trouve
dans le code de la feuille "Feuil1"
Application.Run masub 'et elle est lancée d'un
autre classeur x
End Sub

Salut

"Michel Voirain" a écrit dans le message de
news:
Bonjour à tous,
Je souhaite lancer une macro à partir de vba. L'enregistreur de macros m'a
pondu ceci :
Application.Run "'monclasseur.xls'!nomdelamacro"
Je voudrais écrire Application.Run mamacro où mamacro =
"'monclasseur.xls'!nomdelamacro"
Je cale pour écrire ça correctement !
Merci à tous,
Michel Voirain



Avatar
Michel Voirain
Merci pour vos réponses qui m'ont éclairé!



"Michel Voirain" a écrit dans le message de
news:
Bonjour à tous,
Je souhaite lancer une macro à partir de vba. L'enregistreur de macros m'a
pondu ceci :
Application.Run "'monclasseur.xls'!nomdelamacro"
Je voudrais écrire Application.Run mamacro où mamacro =
"'monclasseur.xls'!nomdelamacro"
Je cale pour écrire ça correctement !
Merci à tous,
Michel Voirain