Discussione:
lanciare macro tramite script vbs
(troppo vecchio per rispondere)
Marco Balocco
2008-01-11 16:04:00 UTC
Permalink
Ciao ragazzi,
ho creato uno script vbs che mi permette di aprire chiudere e salvare un
file excel. Quando il file è aperto devo lanciare una macro contenuta
all'interno di questo file... Che istruzione devo utilizzare per lanciare la
macro??
GRAZIE IN ANTICIPO!!
qui sotto è presente il mio script:

Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
Set objWorkbook = objExcel.Workbooks.Open("F:\Caratteristiche\Copia di
Caratteristiche.xls")
Set objWorksheet = objWorkbook.WorkSheets("Menu")

objWorkbook.Save()
objExcel.Quit
Mauro Gamberini
2008-01-11 16:26:04 UTC
Permalink
Post by Marco Balocco
ho creato uno script vbs che mi permette di aprire chiudere e salvare un
file excel. Quando il file è aperto devo lanciare una macro contenuta
all'interno di questo file... Che istruzione devo utilizzare per lanciare la
macro??
Se(se) come mi sembra di capire
apri e chiudi subito il file .xls,
nell'evento Workbook_Open di
ThisWorkbook metti la chiamata
alla tua macro:

Private Sub Workbook_Open()
Call tuaMacro
End Sub

La macro dovrà essere dichiarata Public e trovarsi
in un modulo standard, eempio:

Public Sub m()
MsgBox "Ciao ciao"
End Sub
--
---------------------------
Mauro Gamberini
http://www.riolab.org/
Maurizio Borrelli
2008-01-11 16:38:27 UTC
Permalink
Post by Marco Balocco
ho creato uno script vbs che mi permette di aprire chiudere e salvare un
file excel. Quando il file è aperto devo lanciare una macro contenuta
all'interno di questo file... Che istruzione devo utilizzare per
lanciare la macro??
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
Set objWorkbook = objExcel.Workbooks.Open("F:\Caratteristiche\Copia di
Caratteristiche.xls")
Set objWorksheet = objWorkbook.WorkSheets("Menu")
objWorkbook.Save()
objExcel.Quit
Ciao Marco.

Consulta la Guida a proposito di:

Function Run([Macro], [Arg1], [...], [Arg30])
Membro di Excel.Application

Tuttavia...

... potresti anche farla lanciare, all'apertura, direttamente dalla
stessa Cartella di lavoro. Cosi':

' ThisWorkbook - Workbook
'
Option Explicit

Private Sub Workbook_Open()
TuaMacro
End Sub

--
(Facci sapere se e eventualmente come hai risolto. Grazie.)

Maurizio Borrelli [MVP]
http://www.riolab.org

Loading...