Wenn der Dateiname „x“ enthält: So funktioniert’s in Excel
Schritt-für-Schritt-Anleitung
Um zu überprüfen, ob ein Dateiname einen bestimmten Teilstring enthält, kannst du in Excel VBA die Funktionen Instr
oder Like
verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:
-
Öffne die Excel-Datei, in der du das Makro hinzufügen möchtest.
-
Drücke ALT + F11
, um den VBA-Editor zu öffnen.
-
Klicke auf Einfügen
und wähle Modul
, um ein neues Modul zu erstellen.
-
Füge den folgenden Code in das Modul ein:
Sub CheckDateiname()
Dim Dateiname As String
Dateiname = ThisWorkbook.Name ' Aktueller Dateiname
' Überprüfung mit Instr
If InStr(Dateiname, "XYZ") > 0 Then
' Prozeduraufruf
MsgBox "Der Dateiname enthält XYZ!"
End If
' Überprüfung mit Like
If Dateiname Like "*XYZ*" Then
' Prozeduraufruf
MsgBox "Der Dateiname enthält XYZ!"
End If
End Sub
-
Schließe den VBA-Editor und kehre zu Excel zurück.
-
Führe das Makro CheckDateiname
aus, um die Überprüfung durchzuführen.
Häufige Fehler und Lösungen
Alternative Methoden
Es gibt mehrere Ansätze, um die Überprüfung durchzuführen:
-
Verwendung von MID
: Diese Funktion kann auch verwendet werden, aber wie du festgestellt hast, ist sie weniger flexibel, da du den genauen Start- und Endpunkt angeben musst.
-
Reguläre Ausdrücke: Du kannst auch mit regulären Ausdrücken arbeiten, um komplexe Muster zu erkennen, jedoch ist dies etwas anspruchsvoller und erfordert zusätzliche Referenzen im VBA-Editor.
Praktische Beispiele
Hier sind zwei praktische Beispiele für die Verwendung der Funktionen:
-
Instr Beispiel:
If InStr(Dateiname, "Bericht") > 0 Then
' Führe spezifische Aktionen aus
End If
-
Like Beispiel:
If Dateiname Like "*Bericht*" Then
' Führe andere spezifische Aktionen aus
End If
Beide Methoden sind nützlich, um zu prüfen, ob der Dateiname einen bestimmten Text enthält.
Tipps für Profis
- Nutze
Option Explicit
am Anfang deines Moduls, um sicherzustellen, dass alle Variablen deklariert sind. Dies hilft, Fehler zu vermeiden.
- Kommentiere deinen Code, um die Lesbarkeit und Wartbarkeit zu erhöhen.
- Teste dein Makro mit verschiedenen Dateinamen, um sicherzustellen, dass es unter allen Umständen funktioniert.
FAQ: Häufige Fragen
1. Wie kann ich das Makro automatisch beim Öffnen der Datei ausführen?
Du kannst die Workbook_Open
-Ereignisprozedur verwenden, um das Makro automatisch auszuführen, wenn die Datei geöffnet wird.
2. Gibt es eine Möglichkeit, mehrere Teile im Dateinamen zu überprüfen?
Ja, du kannst mehrere If
-Bedingungen hintereinander verwenden oder eine Schleife einfügen, um eine Liste von Begriffen zu überprüfen.