VBA Tipp: Ein Makro aus Access in Excel starten

Aus DBWiki
Wechseln zu: Navigation, Suche

Aufgabenstellung

Ich möchte aus Access, zum Beispiel aus Formatierungszwecken, ein Makro in Excel starten. Hier eine Möglichkeit mit Verweis auf die Object Library (als Referenz muss die 'Microsoft Excel Object Library' aktiviert sein).

Lösung

Sub StarteExcelMakro()
 
Dim objExcel As Excel.Application
Set objExcel = New Excel.Application
 
Dim wb As Excel.Workbook
Set wb = objExcel.Workbooks.Open("c:\DeineDatei.xls")
 
objExcel.Visible = True 'falls gewünscht
 
objExcel.Run "meinmakro"
 
wb.Close saveChanges:=True
Set wb = Nothing
objExcel.Quit
Set objExcel = Nothing
End Sub

Alternative

Als Variante ohne 'Microsoft Excel Object Library' Referenz bietet es sich wie folgt an:

Sub StarteExcelMakro()
 
  Dim objExcel As Object
  Set objExcel = CreateObject("Excel.Application")
 
  objExcel.Workbooks.Open FileName:= "c:\DeineDatei.xls"
  objExcel.Visible = True 'falls gewünscht
 
  objExcel.Run "meinmakro"
 
  objExcel.ActiveWorkbook.Close
  objExcel.Quit
  Set objExcel = Nothing
 
End Sub