kann ich den namen der aktiven arbeitsmappe mittels vba ermitteln und ihn in einer variablen speichern, damit ich diese arbeitsmappe eindeutig ansprechen kann?
gruss rahel
wie schaut's mit:
Gruß
Micha
Um den Namen der aktiven Arbeitsmappe in Excel mittels VBA zu ermitteln und ihn in einer Variablen zu speichern, kannst du folgende Schritte befolgen:
Öffne Excel und drücke ALT + F11
, um den VBA-Editor zu starten.
Klicke im Menü auf Einfügen
und wähle Modul
, um ein neues Modul zu erstellen.
Füge den folgenden VBA-Code in das Modul ein:
Sub NamenDerAktivenDateiErmitteln()
Dim a As String
a = ActiveWorkbook.Name
MsgBox "Der Name der aktiven Arbeitsmappe ist: " & a
End Sub
Schließe den VBA-Editor.
Führe das Makro aus, indem du wieder zu Excel zurückkehrst und ALT + F8
drückst. Wähle das Makro NamenDerAktivenDateiErmitteln
aus und klicke auf Ausführen
.
Jetzt wird dir der Name der aktiven Arbeitsmappe in einem Dialogfeld angezeigt.
Fehler: „Laufzeitfehler 1004“
Fehler: „Objektvariable nicht gesetzt“
ActiveWorkbook
muss in einem Kontext verwendet werden, wo eine Arbeitsmappe aktiv ist.Falls du keine VBA verwenden möchtest, kannst du den Namen der aktiven Arbeitsmappe auch manuell ermitteln:
=CELL("filename")
verwendest. Diese gibt den vollständigen Pfad der Datei aus, der Name kann dann aus dem Pfad extrahiert werden.Hier sind einige Beispiele, wie du den Namen der aktiven Arbeitsmappe weiterverwenden kannst:
Speichern des Namens in einer Variablen und Nutzung in einer Nachricht:
Sub BeispielMitNachricht()
Dim dateiName As String
dateiName = ActiveWorkbook.Name
MsgBox "Die Datei " & dateiName & " wurde erfolgreich geladen."
End Sub
Erstellen einer neuen Arbeitsmappe mit dem Namen der aktiven Arbeitsmappe:
Sub NeueDateiMitAktivemNamen()
Dim aktiverName As String
aktiverName = ActiveWorkbook.Name
Workbooks.Add.Name = "Kopie von " & aktiverName
End Sub
ThisWorkbook
anstelle von ActiveWorkbook
: Wenn du sicherstellen möchtest, dass du den Namen der Arbeitsmappe verwendest, in der dein Code läuft, nutze ThisWorkbook.Name
, um Verwirrungen zu vermeiden.1. Wie kann ich den Namen der aktiven Datei in einer Zelle anzeigen?
Du kannst die Formel =CELL("filename")
verwenden, um den Pfad und Namen der aktiven Arbeitsmappe anzuzeigen. Beachte, dass die Datei gespeichert sein muss.
2. Was ist der Unterschied zwischen ActiveWorkbook
und ThisWorkbook
?
ActiveWorkbook
bezieht sich auf die aktuell aktive Arbeitsmappe, während ThisWorkbook
die Arbeitsmappe bezeichnet, in der das VBA-Skript ausgeführt wird.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen