ich ein einzelnes file.bat erstellt haben, die richtig zwei verschiedene vbs-Dateien ausführen:Erstellung von eindeutigen Datei bat
cscript "\\server_1\dir\file_M_1.vbs" "\\server_1\dir\muc1.xlsm"
cscript "\\server_2\dir\file_H_2.vbs" "\\server_2\dir\muc2.xlsm"
der Code der beiden files.vbs die gleiche ist, weil es geschaffen wurde, zu tun das Gleiche in zwei verschiedenen Servern.
Dies ist der Inhalt von file_M_1.vbs, dass einfach das Makro "copy_M" genannt läuft:
Dim args, objExcel
Set args = WScript.Arguments
Set objExcel = CreateObject("Excel.Application")
objExcel.Workbooks.Open args(0)
objExcel.Visible = False
objExcel.Run "copy_M"
objExcel.ActiveWorkbook.Save
objExcel.ActiveWorkbook.Close(0)
objExcel.Quit
Statt dessen ist der Code von file_H_2.vbs, das Makro namens "copy_H" läuft:
Dim args, objExcel
Set args = WScript.Arguments
Set objExcel = CreateObject("Excel.Application")
objExcel.Workbooks.Open args(0)
objExcel.Visible = False
objExcel.Run "copy_H"
objExcel.ActiveWorkbook.Save
objExcel.ActiveWorkbook.Close(0)
objExcel.Quit
ich würde gerne wissen, ob es gibt die Möglichkeit, alle drei Teile des Codes zu sammeln in nur eine file.bat oder file.exe (wird auch mit dem Task-Scheduler in einem bestimmten Zeitpunkt ausgeführt werden geplant von Windows7.)
Ist es möglich? Sicher. Werden wir den Code für dich schreiben? Nicht sehr wahrscheinlich. Ändern Sie das Skript so, dass es über "WScript.Arguments" führt und führen Sie die Makros je nachdem, welche Datei Sie geöffnet haben, aus. Führen Sie das VBScript mit einer Argumentliste aus, die aus beiden Arbeitsmappen besteht. –