DIAdem

cancel
Showing results for 
Search instead for 
Did you mean: 

Excel Makro durch VBS starten

Solved!
Go to solution

Hallo zusammen,

 

gibt es eine Möglichkeit, ein fertiges Excel-Makro, das im Excel-Sheet durch einen "Start"-Button aufgerufen werden kann, aus'm Diadem durch ein VBS-Skript zu starten?

 

 

Vielen Grüße

Sebastian

0 Kudos
Message 1 of 3
(8,620 Views)
Hallo Sebastian,

Excel lässt sich über die OLE-Schnittstelle fernsteuern.

Unter Hilfe -> Beispiele finden sich folgende Anregungen:


Excel-Objektmodell - Steuern von Windows-Anwendungen

Excel - Clientbetrieb von DIAdem mit Excel als Server


Weitere Informationen zum Zugreifen auf Microsoft-Objekte finden sich unter support.microsoft.com unter dem Suchbegriff Finden und Verwenden der Dokumentation zum Office-Objektmodell.


Viele Grüße
Ralf N.
Message 2 of 3
(8,595 Views)
Solution
Accepted by topic author steddys

Hier meine Routine, mit der ich aus'm VBS (Diadem) das Excel-Makro starten kann!

 

Viele Grüße Sebastian 

 

dim objExcel, objWorkbook, fso, LoescheDatei

Const xlMaximized =&HFFFFEFD7

'#### öffnen des Excel-Files mit dem Makro

Set objExcel = CreateObject("Excel.Application") objExcel.Visible = True

Set objWorkbook = objExcel.Workbooks.Open("C:\Lokale Daten\Messdaten-Test\Test.xls")

' Maximize Excel window.

objExcel.WindowState = xlMaximized

' Minimize DIAdem.

Call WndShow("SHELL", "MINIMIZE")

'#### Starten des Makros im Excel-File hier ohne "()"

objExcel.Run "auto_open"

 

'#### Überprüfen und löschen der zu speichernden fertigen Excel-Datei

Set fso = CreateObject("Scripting.FileSystemObject")

if fso.FileExists("C:\Lokale Daten\Messdaten-Test\Test_fertig.xls") then

       LoescheDatei = fso.DeleteFile("C:\Lokale Daten\Messdaten-Test\Test_fertig.xls", True) else

end if

 

'#### Speichern der fertigen Excel-Datei mit den verarbeiteten Daten

call objWorkBook.SaveAs("C:\Lokale Daten\Messdaten-Test\Test_fertig.xls")

'#### Alles schließen

objWorkBook.Close

objExcel.Quit

Set objWorkBook = Nothing

Set objExcel = Nothing

 

'#### Öffnen des Diadem Bildschirms

Call WndShow("SHELL", "FULLSIZE")

msgbox ("Fertig")

Message Edited by steddys on 05-05-2010 07:32 AM
Message 3 of 3
(8,570 Views)