Autor: Beate Schmitz  --- Aus Excel Standard - Gruppe: Tutorials

Namen Anhang: Konventionen und Detailinformationen

Autor: Beate Schmitz - Erstellt: 2008-02      - Letzte Revision: ?Gruppenthema: 5 Folgen 1 2 3 4 5 Sie sind in Folge:5

Namen Anhang: Konventionen und Detailinformationen


Hier möchte ich Ihnen einige Besonderheiten mit auf den Weg geben, die Sie bei der Namensdefinition kennen sollten. Nachstehend dazu folgende Unterthemen:


Zum Blattanfang

Namenskonventionen

  • Sonderzeichen in Namen sind zu vermeiden
  • Namen müssen eindeutig in der Mappe sein. Soll ein Name mehr als einmal in der Mappe vorkommen, muss man lokale Namen definieren.
    Siehe hierzu den Abschnitt: Reservierte Namen
  • Leerzeichen dürfen nicht vorkommen: Statt dessen nehmen Sie einen Unterstrich
  • Namen können höchstens 255 Zeichen haben, aber es können nur Namen bis zu einer Länge von 253 Zeichen im Namenfeld ausgewählt werden
  • Namen dürfen keine Zelladressen sein, z.B. A7. Somit fallen bis Excel2003 die Namen A1 bis IV65536 flach. Denken Sie aber heute schon daran, dass ab Excel2007 viel mehr Spalten und Zeilen existieren. Dort fallen die Namen A1 bis XFD1048576 flach. Insofern Sie heute in Ihren Dateien Namen haben, die nach dem Update auf Excel2007 einer Zelladresse entsprechen, setzt Excel dann automatisch einen Unterstrich vor den definierten Namen. Wenn Sie diesen Namen aber in Codes oder Formeln enthalten haben, müssen Sie diesen Unterstrich dort einfügen, damit Ihre Datei wieder wie gewollt funktioniert
  • Wird der Tabellenblattname in die Formel eingefügt, dann empfiehlt es sich, ihn in Hochkommas einzuschließen. Jedenfalls ist man damit auf der sicheren Seite, falls der Blattname Leerzeichen enthält. Erst nach dem zweiten Hochkomma ist dann das Ausrufungszeichen einzufügen
  • "S" und "Z" sind im deutschen Excel reservierte Worte für Spalte und Zeile und können nicht benutzt werden. Im englischen Excel sind das "R" und "C" für Row und Column


Zum Blattanfang

Reservierte Namen

Es gibt einige Bereichsnamen, die für die Nutzung durch Excel reserviert sind und Ihnen insofern nicht als benutzerdefinierte Bereichsnamen zur Verfügung stehen.

Auch wenn Sie diese nicht zur Definition Ihrer Bereiche benutzen können, heißt dies nicht, dass Sie diese nicht nutzen können. Wenn Sie z.B. den Namen Druckbereich nutzen, können Sie definieren, welche Zellen gedruckt werden sollen.

Die englischen Bezeichnungen der reservierten Namen füge ich bei, da Sie diese benutzen müssen, wenn Sie diese Bereiche per Code ansprechen wollen.

DeutschEnglischZweckBemerkung
Auto_aktivierenAuto_ActivateDieser Name ruft beim Aktivieren des Blatts ein Makro aufstatt einer Formel gehört das auszuführende Makro in das "bezieht sich auf"-Feld. Ein Gleichheitszeichen ist voranzustellen.
Auto_schließenAuto_CloseDieser Name ruft beim Dateischließen ein Makro auf
Auto_deaktivierenAuto_DeactivateDieser Name ruft beim Deaktivieren des Blatts ein Makro auf
Auto_öffnenAuto_OpenDieser Name ruft beim Dateiöffnen ein Makro auf
KonsolidationsbereichConsolidate_AreaDer Name bezieht sich auf den KonsolidationsbereichKonsolidieren
DatenmaskeData_FormDer Name bezieht sich auf den Datenbankbereich für DatenmaskeDatenmaske
DatenbankDatabaseDer Name definiert eine Datenbank 
SuchkriterienCriteriaDer Name wird vom Spezialfilter für den Kriterienbereich verwandtSpezialfilter (2) - Filtern nach Kriterien
ZielbereichExtractDer Name wird vom Spezialfilter für den Zielbereich verwandtSpezialfilter (2) - Filtern nach Kriterien
DruckbereichPrint_AreaDer Name wird benutzt, wenn per Hand ein Druckbereich definiert wurdeSeite einrichten - Einstellungen zum Drucken
DrucktitelPrint_TitlesDer Name wird benutzt, wenn per Hand Wiederholungszeilen definiert wurdenSeite einrichten - Einstellungen zum Drucken
AufzeichnungRecorder  
TabellenüberschriftSheet_Title  
_FilterDatenbank_FilterDatabaseDer Name wird beim Einsatz des Autofilters benutztAutofilter



Die meisten dieser Namen sind lokale Namen und somit, falls überhaupt existent, nur im Namen-Definieren-Dialog sichtbar, wenn das entsprechende Tabellenblatt aktiv ist. Mehr Information zu lokalen Namen finden Sie im Abschnitt Lokale und globale Namen. Haben Sie z.B. einen Druckbereich in einem Blatt definiert, finden Sie den Druckbereich im entsprechenden Tabellenblatt auch als lokalen Namen. Manche dieser Namen werden aber auch unsichtbar von Excel gespeichert und sind somit nicht sichtbar, als Beispiel ist da _FilterDatenbank zu nennen.



Achtung!!!:

Wenn man per Makro alle Namen einer Datei löscht, werden auch die reservierten Namen gelöscht. Z.B. sind die Druckbereiche nicht mehr da und Autofilter werden zwar angezeigt, aber sie zeigen keine Auswahl mehr an. Abhilfe: Druckbereich neu festlegen, Autofilter aufheben und neu setzen.


Speziell: Ereignis-Namen

Heutzutage werden diese Aktionen üblicherweise von Ereignis-Makros übernommen, was auch sinnvoll ist, da die Datei ja sowieso schon Code enthält. Sollten Sie dem aber mal begegnen, können Sie sich hier informieren wie sie funktionieren. Zu den Ereignis-Namen zählen:

Auto_aktivierenAuto_schließenAuto_deaktivierenAuto_öffnen



Ein Beispiel: Definieren Sie einen Namen wie folgt:

Name:Auto_öffnen
Bezieht sich auf:=Bin_wieder_da


Fügen Sie dieses Makro in ein allgemeines Modul ein und speichern Sie die Datei:

Sub Bin_wieder_da()
MsgBox "Bin wieder da"
End Sub


Ab dem nächsten Dateiöffnen wird das Makro nun ausgeführt. Entsprechend wirken sich die anderen Ereignis-Namen bei den entsprechenden Ereignissen aus.


Zum Blattanfang

Namen löschen

Das Löschen von Namen oder den benannten Bereichen und die Folgen

Namen löscht man, indem man über Menü > Einfügen > Namen > Definieren... geht. Ein Dialogfenster öffnet sich. Sie markieren den zu löschenden Namen und klicken auf die Schaltfläche Löschen und verlassen das Dialogfenster über die Schaltfläche OK. Handelt es sich bei dem zu löschenden Namen um einen lokalen Namen, so wird dieser Ihnen nur dort angezeigt, wenn das Tabellenblatt aktiv ist, in dem der Name lokal definiert ist.

Das Löschen von Namen kann nicht rückgängig gemacht werden. Eine Möglichkeit wäre, die Datei ohne Speichern zu schließen, dadurch verlieren Sie aber die anderen vorgenommenen Änderungen. Ansonsten bleibt nur Neuerfassung übrig.

Wenn Sie einen Namen löschen, der in einer Formel genutzt wird, wird die Formel den Fehlerwert #Name? ausgeben.

Wenn Sie Bereiche löschen, die per Namen definiert sind, dann wird der Name ungültig. Sie erkennen es an der Formel, dort steht u.A. dann der Fehlerwert #Bezug!. Die fehlerhaften Namen löschen sich nicht automatisch sondern sollten von Ihnen wie oben beschrieben gelöscht werden.


Zum Blattanfang

Namen löschen, die Sonderzeichen enthalten

Es kann auch vorkommen, dass definierte Namen besondere Zeichen enthalten, wie z.B. " AS". Häufig entstehen solche korrupten Namen durch den Datenimport aus anderen Programmen. Und häufig sind es nicht-druckbare Zeichen. Und auf die oben beschriebene Weise lassen sich diese korrupten Namen nicht löschen.

Aber es gibt Abhilfe, hier die schrittweise Beschreibung des Vorgehens:

  • Gehen Sie über Menü > Extras > Optionen... > Registerblatt Allgemein
  • Haken Sie unter Einstellungen die Z1S1-Bezugsart an
  • Verlassen Sie das Dialogfenster über die Schaltfläche OK
  • Excel fordert Sie nun auf, die Namen in allen geöffneten Arbeitsmappen zu ändern, die ungültige Zeichen enthalten. Das passiert nach Bestätigung automatisch
  • Gehen Sie über Menü > Einfügen > Namen > Definieren... - dort können Sie nun die umbenannten und vorher korrupten Namen auf gewohnte Weise löschen
  • Gehen Sie über Menü > Extras > Optionen... > Registerblatt Allgemein und setzen dort die Bezugsart Z1S1 wenn gewünscht wieder zurück

Zum Blattanfang

Lokale und globale Namen

Definierte Namen in Excel können global oder lokal sein. Der gleiche Name kann in einer Arbeitsmappe nur einmal global existieren. Wollen Sie den gleichen Namen mehrmals in Ihrer Datei in verschiedenen Blättern nutzen, dann müssen Sie ihn spätestens ab dem zweiten Blatt als lokalen Namen definieren. Gleichlautende Namen können in Dateien interessant sein, die Blätter gleicher Strukur enthalten.


Erstellung globaler/lokaler Namen

Einen globalen Namen kann man definieren, wenn der Name erstmalig in der Arbeitsmappe vorkommt. Dazu reicht es, einen Bereich zu markieren und den gewünschen Namen ins Namenfeld einzugeben. Existiert ein Name schon global und wir wollen ihn an anderer Stelle erneut global definieren, dann wird die erste Definition durch die spätere Definition ersetzt; er wird also kein zweites Mal angelegt.

Lokale Namen erstellen sich automatisch, wenn ein Blatt, welches Namen enthält, kopiert wird, da ja durch die Blattkopie automatisch der Name ein zweites Mal erzeugt wird. Damit ist der Bereichsname wieder eindeutig innerhalb der Arbeitsmappe.
Man kann lokale Namen aber auch per Hand erstellen: Gehen Sie über Menü > Einfügen > Namen > Definieren.... Vor dem eigentlichen Namen ist der Blattname mit Ausrufungszeichen einzugeben. Im Feld bezieht sich auf ist ebenfalls der Blattname mit Ausrufungszeichen vor dem Bereich einzugeben; weiterhin empfiehlt es sich, den Tabellenblattnamen in Hochkommas einzuschließen, weil der Blattname sonst ungültig wäre, sobald Leerzeichen in ihm vorkommen. Beispiel:

Name:'Tabelle1'!Test1a
Bezieht sich auf:='Tabelle1'!$E$5


Rangfolge zwischen globalen und lokalen Namen

Wenn in einer Arbeitsmappe der Name als globaler Name aber auch als lokaler Name vorkommt, dann dominiert der lokale Namen über den globalen Namen, insofern das Blatt aktiv ist, in dem der Name lokal definiert wurde.
Beispiel: Sie haben in einer Arbeitsmappe den globalen Namen Umsatz definiert und im Tabellenblatt Tabelle2 den lokalen Namen Umsatz, dann wird Ihnen in jedem Blatt der Mappe der globale Name Umsatz im Dialogfenster Menü > Einfügen > Namen > Definieren... angezeigt. Außer im Blatt Tabelle2. Dort ist nur der lokale Name Umsatz sichtbar. Wenn Sie diesen löschen, dann erscheint auch dort wieder der globale Name Umsatz.


Woran erkennt man, ob ein Name global oder lokal ist?

Im Dialogfenster Menü > Einfügen > Namen > Definieren... erkennen Sie lokale Namen daran, dass in der Liste rechts vom Namen der Blattname angezeigt wird. Dafür muss das Blatt aber aktiv sein, in dem der lokale Name definiert wurde. Bei globalen Namen steht kein Blattname daneben.


Zugriff auf globale/lokale Namen - auf den Standpunkt kommt es an!

Globale Namen sind in der gesamten Arbeitsmappe verfügbar, außer in den Blättern, die den gleichen Namen lokal definiert haben. Lokale Namen sind nur auf dem Blatt verfügbar, wo sie definiert sind. Zugreifen können wir aber von überall aus auf globale und lokale Namen; wichtig ist, dass wir unbedingt beachten, wo wir uns befinden, um den Verweis korrekt zu setzen.

Beispiel: Der lokale Name Umsatz ist in Tabelle2 definiert, während der globale Name Umsatz in einem anderen Tabellenblatt der Arbeitsmappe definiert ist. Die Beispielarbeitsmappe heißt Dateiname.xls. Im Beispiel benutzen wir die Funktion SUMME:

  • Befinden wir uns in dem Blatt Tabelle2, in dem der Name Umsatz lokal definiert wurde, dann bringt die Formel
    =SUMME(Umsatz)
    die Summe des Umsatzbereichs der Tabelle2, da hier der lokale Name über den globalen dominiert.
  • Wollen wir von Tabelle2 aus auf den globalen Namen Umsatz zugreifen, dann müssen wir den Dateinamen in der Formel voranstellen, da sonst der lokale Name dominiert, also:
    =SUMME('Dateiname.xls'!Umsatz)
  • Wollen wir von einer anderen Tabelle als Tabelle2 aus auf den globalen Namen Umsatz zugreifen, dann reicht
    =SUMME(Umsatz)
  • Wollen wir von einer anderen Tabelle als Tabelle2 aus auf den lokalen Namen Umsatz in Tabelle2 zugreifen, dann muss der Blattname wieder vorangestellt werden:
    =SUMME('Tabelle2'!Umsatz)
  • Wollen wir von einer anderen Datei auf den globalen Namen Umsatz zugreifen, dann reicht, insofern die Datei mit der Namensdefinition geöffnet ist:
    =SUMME('Dateiname.xls'!Umsatz)
    Wird die Datei, in der der Name definiert ist, geschlossen, ersetzt Excel automatisch den Dateinamen durch den kompletten Pfad + Dateinamen im Verweis
  • Wollen wir von einer anderen Datei auf den lokalen Namen Umsatz zugreifen, dann so, insofern die Datei mit der Namensdefinition geöffnet ist:
    =SUMME('[Dateiname.xls]Tabelle2'!Umsatz)
    Wird die Datei, in der der Name definiert ist, geschlossen, ersetzt Excel automatisch den Dateinamen durch den kompletten Pfad + Dateinamen im Verweis

Löschen globaler/lokaler Namen

Im Abschnitt Namen löschen ist beschrieben, wie man Namen löscht. Um lokale Namen löschen zu können, muss das Blatt, in dem der Name lokal definiert ist, aktiv sein.


Navigation zu globalen/lokalen Namensbereichen

Wie Sie über das Namenfeld zu Namensbereichen navigieren können, ist hier beschrieben. Die dort genannte Vorgehensweise können Sie anwenden, wenn es sich um globale Namen handelt bzw. wenn der lokale Name im aktiven Blatt definiert ist. Wollen Sie den Bereich eines lokalen Namens eines anderen Blatts ansteuern, dann müssen Sie im Namenfeld den Blattnamen mit Ausrufungszeichen gefolgt vom lokalen Namen eingeben.




Dieses Thema hat weitere Beiträge

Namen (1) - Einstieg
Namen (2) - Einstieg die Zweite
Namen (3) - Erste Zaubereien
Namen (4) - Ne, nicht wirklich
Namen Anhang: Konventionen und Detailinformationen

Weitere Artikel der Gruppe: Tutorials Aus Excel Standard
Nach oben
rechte seite