Wie erhalte ich den blattnamen in excel?
In Excel gibt es keine direkte Funktion zum Abrufen des Namens des aktiven Blatts. Die Lösung für dieses Problem besteht nun darin, eine Formel mit mehreren Funktionen zu erstellen oder eine mit VBA erstellte benutzerdefinierte Funktion zu verwenden.
In diesem Tutorial lernen Sie beide Methoden anhand von Beispielen kennen.
Verwenden Sie eine Formel, um den Arbeitsblattnamen zu erhalten
Um eine Formel zu erstellen, um den Namen des Arbeitsblatts zu erhalten, müssen wir die Funktionen CELLS, FIND und MID verwenden. Hier ist die Funktion, mit der Sie den Blattnamen abrufen können.
=MID(CELL("filename"),FIND("]",CELL("filename"))+1,LEN(CELL("filename")))
Sie geben die obige Formel in eine der Zellen des Arbeitsblatts ein, für das Sie den Blattnamen haben möchten. Lassen Sie uns nun diese Formel verstehen. Um sie zu verstehen, müssen wir sie in vier Teile unterteilen.
Im ersten Teil haben wir eine CELL-Funktion, die die Adresse der Arbeitsmappe mit dem Namen des aktuellen Blatts zurückgibt.
Und hier ist die Adresse, die wir aus der Zellfunktion erhalten haben. Hier sehen Sie, dass am Ende der Adresse der Name des Blattes steht und Sie dessen Namen ermitteln müssen.
Im zweiten Teil haben wir nun die FIND-Funktion, die die Zellenfunktion verwendet, um die Adresse abzurufen und die Position des Zeichens zu finden, das sich genau eine Position vor dem Blattnamen befindet.
Und sobald Sie die Positionsnummer „]“ erhalten haben, müssen Sie 1 hinzufügen, um die Position des ersten Zeichens des Blattnamens zu erhalten.
Im dritten Teil haben Sie nun die Funktionen LEN und CELL, um die Zeichen im gesamten Pfad zu zählen.
An diesem Punkt haben wir nun den Adresspfad, die Position des ersten Zeichens des Blattnamens und die Anzahl der Zeichen, die wir im Adresspfad haben.
Und im vierten Teil haben Sie mit der MID-Funktion den Blattnamen im Ergebnis.
Erstellen Sie eine benutzerdefinierte Funktion, um den Blattnamen abzurufen
Der einfachste Weg ist, einen Blattnamen über eine UDF zu erhalten. Sie müssen keine komplexe Formel erstellen, sondern einfachen Code wie diesen.
Function mySheetName() mySheetName = ActiveSheet.Name End Function
Sehen wir uns nun an, wie Sie mit diesem Code den Namen des aktuellen Arbeitsblatts in eine Zelle extrahieren. Führen Sie die folgenden Schritte aus:
- Gehen Sie zunächst zur Registerkarte „Entwickler“ und klicken Sie auf „Visual Basic“.
- Gehen Sie nun im Visual Basic-Editor zur Option „Einfügen“ und klicken Sie auf „Modul“, um ein Modul einzufügen.
- Gehen Sie danach zum Codefenster und fügen Sie dort den obigen Code ein.
- Schließen Sie am Ende den Visual Basic-Editor und kehren Sie zur Tabelle zurück.
Wählen Sie nun eine der Zellen im Arbeitsblatt aus, deren Namen Sie erhalten möchten, und geben Sie darin die folgende Funktion ein.
In diesem Tutorial erfahren Sie mehr über das Erstellen einer benutzerdefinierten Funktion.