Wie kann ich per VBA-Code Dateien öffnen, die sich in einem festen Verzeichnis befinden aber täglich wechselnde Namen haben.
Z.B. Pfad...Datei20040226, Pfad...Datei20040227
Danke im Voraus.
Um Dateien mit variablem Namen per VBA zu öffnen, folge diesen Schritten:
Öffne den VBA-Editor: Drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.
Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf "VBAProject (DeineDatei.xlsx)" und wähle "Einfügen" > "Modul".
Gib den folgenden Code ein:
Sub DateiOeffnen()
Dim aaa As String
Dim bbb As String
aaa = Date ' Aktuelles Datum
bbb = Mid(aaa, 7, 4) & Mid(aaa, 4, 2) & Mid(aaa, 1, 2) ' Format YYYYMMDD
Workbooks.Open Filename:="C:\ANDREAS\TEST\" & bbb & ".xls" ' Pfad anpassen
End Sub
Passe den Pfad an: Ändere "C:\ANDREAS\TEST\" zu dem Verzeichnis, in dem Deine Dateien gespeichert sind.
Führe das Makro aus: Drücke F5, um das Makro auszuführen. Die Datei mit dem heutigen Datum im Namen wird geöffnet.
Datei > Optionen > Trust Center > Einstellungen für das Trust Center > Makroeinstellungen.Falls Du nicht mit VBA arbeiten möchtest, kannst Du auch die Funktion HYPERLINK nutzen, um auf Dateien mit variablen Namen zuzugreifen. Beispiel:
=HYPERLINK("C:\ANDREAS\TEST\" & TEXT(HEUTE(),"JJJJMMTT") & ".xls", "Datei öffnen")
Diese Formel generiert einen Hyperlink, der die Datei öffnet, wenn das Datum im richtigen Format vorliegt.
Beispiel 2: Wenn Du eine bestimmte Datei öffnen möchtest, gib einfach das Datum als Variable ein:
Dim dateInput As String
dateInput = "20040226" ' Beispiel für ein festes Datum
Workbooks.Open Filename:="C:\ANDREAS\TEST\" & dateInput & ".xls"
Verwende Error Handling: Füge Error Handling hinzu, um mögliche Laufzeitfehler abzufangen:
On Error Resume Next
Workbooks.Open Filename:="C:\ANDREAS\TEST\" & bbb & ".xls"
If Err.Number <> 0 Then
MsgBox "Die Datei konnte nicht geöffnet werden."
End If
On Error GoTo 0
Variablen flexibel gestalten: Experimentiere mit verschiedenen Datumsformaten, um spezifische Anforderungen zu erfüllen.
1. Wie kann ich den Dateipfad dynamisch gestalten?
Du kannst eine Eingabezelle in Excel verwenden, um den Pfad einzugeben und dann den VBA-Code anpassen, um diesen Pfad zu nutzen.
2. Ist dieser VBA-Code in allen Excel-Versionen anwendbar?
Ja, der Code sollte in den meisten Excel-Versionen ab 2007 funktionieren, solange VBA unterstützt wird. Achte darauf, dass die Dateiendungen kompatibel sind.