Avviare Macro presente in una altro foglio Excel
Hai un problema con Excel?
Avviare Macro presente in una altro foglio Excel
di bellared data: 28/12/2016 15:36:49
Ciao a tutti,
sto definendo un codice che mi permetta di aprire un'altra cartella di lavoro e avviare una macro contenuta in essa. Cercando in rete ho trovato il comando:
Application.Run "'C:Cartel2.XLS'!ThisWorkbook.NameMacro"
ma non riesco ad adattarla al mio codice in quanto la directory "C:..." io la definisco attraverso il comando ThisWorkbook.Path che non mi permette di inserire l'apice singolo necessario in questo tipo di istruzione.
Mi sapreste dare un consiglio?
Intanto vi allego la struttura del codice che sto utilizzando:
Dim MyPath As String
Dim MyFileName_TAB As String
Dim MyFileName_NL As String
MyPath = ThisWorkbook.Path & ""
MyFileName_TAB = "Tab Pilota v2.xlsm"
MyFileName_NL = "N_LIFE_v27.xlsb"
Workbooks.Open Filename:=MyPath & MyFileName_NL
Application.Run MyPath & MyFileName_NL & "!ThisWorkbook.Change_Data" |
di patel data: 28/12/2016 19:39:59
prova
Application.Run "'" & MyFileName_NL & "'!Change_Data" |
di bellared data: 28/12/2016 22:28:58
Si, funziona...
Ora capisco, stavo ripetendo due volte la directory...
Ora che non si blocca mi sono reso conto che processando con F8, subito dopo il comando:
Workbooks.Open Filename:=MyPath & MyFileName_NL
automaticamente passa ad un altro modulo dove ho definito una "Function", la ripercorre tutta e torna poi sul codice che esegue l'istruzione che mi hai aiutato a definire. Ora, siccome nel corso della run non utilizzo mai questa funzione e dato che la macro è già lunga di per se, vorrei evitare questo passaggio ulteriore e ti chiederei se sai come posso disattivarla o inibirla temporaneamente.
Spero di essermi spiegato
Vuoi Approfondire?