der liebe Nepumuk hat mir schon geholfen, leider will es noch nicht ganz so wie ich will. Folgendes Problem: Ich habe 4 verschiedene Excel-Dateien mit 4 verschiedenen Makros und will nun alle auf einmal starten und ausführen, ohne, dass ich immer alle Dateien separat öffnen muss. Folgendes Makro hab ich:
Public Sub Main()
Const FOLDER_PATH As String = "O:\Ordner\" 'Ordner anpassen Backslash am Ende nicht lö _
schen _
Dim strFilename As String
Dim objWorkbook As Workbook
strFilename = Dir$(FOLDER_PATH & "*.xlsm")
Do Until strFilename = vbNullString
Set objWorkbook = Workbooks.Open(Filename:=FOLDER_PATH & strFilename)
Call Application.Run("'" & objWorkbook.Name & "'!Makro1")
Call Application.Run("'" & objWorkbook.Name & "'!Makro2")
Call Application.Run("'" & objWorkbook.Name & "'!Makro3")
Call Application.Run("'" & objWorkbook.Name & "'!Makro4")
Call objWorkbook.Close(SaveChanges:=False)
Set objWorkbook = Nothing
strFilename = Dir$
Loop
End Sub
Funktioniert sehr gut, allerdings nur bis zur ersten Datei, alle weiteren funktionieren nicht. Wenn ich beispielsweise in die Zeile von Makro 2 bei objWorkbook.Name drüber fahre, wird hier nicht die 2. Excel Datei in der Vorschau angezeigt, sondern immer noch die erste. Da liegt vermutlich das Problem. Kann mir jemand die Lösung verraten?
Viele Grüße und Danke
Maxi