Excel-Datei aufrufen, Makro auführen
20.02.2023 13:17:56
Sepseudo
ich habe folgende Problemstellung und würde mich über Hilfe sehr freuen.
Ich habe eine Excel-Datei, in der in verschiedenen Zellen verschiedene Dateipfade von anderen Excel-Dateien stehen z.B. C:\Musterpfad\Musterdateiname1.xlsm in Zelle A1. Ein weiterer Pfad z.B. C:\Musterpfad\Musterdateiname2.xlsm in Zelle A2 usw.
Mit einer For each Schleife und den selektierten Zellen öffne ich nun der Reihe nach die entsprechenden Excel-Dateien.
Anschließend soll ein Makro ausgeführt werden, welches sich in einem Modul befindet mit Namen "ABerstellen".
Hier der Code:
Sub DateiaufrufenMakroausführen()
Dim Pfad As String
Dim Dateiname As String
For Each Zelle In Selection
Pfad = Zelle.Value
Workbooks.Open Filename:=Pfad
Dateiname = "'Musterdateiname1.xlsm'"
Application.Run Dateiname & "!ABerstellen"
Next
End Sub
Problem: Für nur die Musterdateiname1.xlsm und Angabe dieses festen Dateinamens in Form von
Dateiname = "'Musterdateiname1.xlsm'"
Application.Run Dateiname & "!ABerstellen"
funktioniert es.
Allerdings will ich diesen Dateiname ja als Variable angeben. Zum Beispiel indem die Dateinamen in der Spalte neben der Zelle der For each Schleife stehen:
Dateiname = Zelle.Offset(0, 1).Value
Application.Run Dateiname & "!ABerstellen"
Hier bringt Excel allerdings einen Laufzeitfehler.
Mit der Bitte um Hilfestellung.
Vielen Dank!