Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

vbs comando macro

Problemi di HTML? Di PHP, ASP, .NET, JSP, Perl, SQL, JavaScript, Visual Basic..?
Vuoi realizzare programmi in C, C++, Java, Ruby o Smalltalk, e non sai da che parte cominciare?
Entra qui e troverai le risposte!

Moderatori: Triumph Of Steel, archimede

vbs comando macro

Postdi trittico69 » 08/08/11 16:12

è possibile con un comando vbs far partire una macro con excel aperto?
trittico69
Utente Senior
 
Post: 487
Iscritto il: 16/08/09 18:41

Sponsor
 

Re: vbs comando macro

Postdi trittico69 » 10/08/11 12:22

io ho fatto così

filePath = "c:\Test1.xls"
Set xl = CreateObject("Excel.Application")
XL.Visible = True
xl.Workbooks.Open(filepath)
xl.Run "macro1"

però in questo modo mi apre un secondo file excel a me serve che mi avvii la macro con file excel gia aperto...
trittico69
Utente Senior
 
Post: 487
Iscritto il: 16/08/09 18:41

Re: vbs comando macro

Postdi Anthony47 » 12/08/11 22:06

Non so se nel frattempo hai ricevuto risposte esaurienti, comunque se excel e il file sono gia' aperti non devi usare CreateObject ma GetObject; ad esempio:
Codice: Seleziona tutto
Dim myExcelApp As Object
Set myExcelApp = GetObject(, "Excel.application")
myExcelApp.Visible = True    '<<Opzionale
myExcelApp.Run "Multi_B10812.xls!Giropt"

Questa manda in esecuzione la macro "Giropt" del file Multi_B10812.xls aperto in Excel.

E' possibile che il tuo script abbia gia' creato un riferimento all' applicazione excel, ad esempio se hai aperto il file tramite di esso; in questo caso devi usare direttamente l' istruzione "oggetto.Run2 "File!Macro"

Ciao.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13899
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: vbs comando macro

Postdi Anthony47 » 12/08/11 22:23

Non "oggetto.Run2 "File!Macro"
ma oggetto.Run "File!Macro"

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13899
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: vbs comando macro

Postdi trittico69 » 13/08/11 16:39

mi dice prevista fine isruzione...
comunque ti do una parte del codice che ho magari lo puoi abbinare a questo..in pratica dopo l'ultimo rigo mi dovrebbe partire la macro che si chiama "avvia" e il file si chiama "rubricactc"
trittico69
Utente Senior
 
Post: 487
Iscritto il: 16/08/09 18:41

Re: vbs comando macro

Postdi Anthony47 » 13/08/11 19:57

mi dice prevista fine isruzione...
Su quale riga??
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13899
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: vbs comando macro

Postdi trittico69 » 13/08/11 20:01

scusa
Codice: Seleziona tutto
Set XL = CreateObject("EXCEL.APPLICATION")
XL.Visible = True
XL.AskToUpdateLinks = False
XL.DisplayAlerts = False
Set wB = XL.Workbooks.Open ("\\Cedinfoserver\UfficioPosta\nuova cartella\rubrica11ctc")
XL.AskToUpdateLinks = False
XL.DisplayAlerts = False
Set wB = XL.Workbooks.Open("\\CEDINFOSERVER\rotonda\MATTINALE TR2.xls")
XL.ActiveWorkBook.Close
Set wB = XL.Workbooks.Open("\\CEDINFOSERVER\RepartoA\MATTINALI bis.xls")
XL.ActiveWorkBook.Close
Set wB = XL.Workbooks.Open("\\CEDINFOSERVER\Femminile\MATTINALI REPARTO FEMMINILE.xls")
XL.ActiveWorkBook.SaveAs "C:\Documents and Settings\utente\Desktop\RUBRICActc.XLS"
XL.ActiveWorkBook.Close
Set wB = XL.Workbooks.Open ("\\Cedinfoserver\UfficioPosta\nuova cartella\rubrica11ctc")
trittico69
Utente Senior
 
Post: 487
Iscritto il: 16/08/09 18:41

Re: vbs comando macro

Postdi Anthony47 » 13/08/11 20:48

Perche' non mi dici come hai tradotto il mio suggerimento? Comunque avresti dovuto fare:
Codice: Seleziona tutto
Set wB = XL.Workbooks.Open ("\\Cedinfoserver\UfficioPosta\nuova cartella\rubrica11ctc") 'ESISTENTE
xl.Run "rubrica11ctc.xls!avvia"       '<<< AGGIUNTA
(nell' ipotesi che il file si chiami rubrica11ctc.xls)

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13899
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: vbs comando macro

Postdi trittico69 » 13/08/11 23:10

l'avevo già fatto ma mi dice prevista fine istruzione
trittico69
Utente Senior
 
Post: 487
Iscritto il: 16/08/09 18:41

Re: vbs comando macro

Postdi Anthony47 » 14/08/11 08:50

Cortesemente vuoi essere preciso? Su quale istruzione il compilatore ti da' l' errore (devi "copiare" la TUA riga e "incollarla" nel messaggio)? quale parte dell' istruzione e' evidenziata?
Intanto per prova metti la stringa "rubrica11ctc.xls!avvia" tra parentesi, quindi
Codice: Seleziona tutto
xl.run ("rubrica11ctc.xls!avvia")

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13899
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: vbs comando macro

Postdi trittico69 » 15/08/11 16:04

ok adesso funziona...grazie!
trittico69
Utente Senior
 
Post: 487
Iscritto il: 16/08/09 18:41


Torna a Programmazione


Topic correlati a "vbs comando macro":


Chi c’è in linea

Visitano il forum: Nessuno e 4 ospiti