Über den Unterschied zwischen dem „normalen“ Namen und dem „Codenamen“ in VBA und warum wir bei der Programmierung lieber die „Codenamen“ verwenden sollten.

Excel VBA Live-Onlinekurs: Normaler Name vs. Codename in Excel-VBA

Wir kennen es aus so gut wie jedem VBA-Projekt: Irgendwann kommt der Punkt, an wir auf Zellen in bestimmten Arbeitsblättern zugreifen müssen – sei es, um Werte aus bestimmten Zellen als Eingabe/Ausgabe für das Programm zu nutzen oder um gezielt per VBA Formatierungen im Arbeitsblatt zu verändern.

Dafür bietet Excel VBA verschiedene Möglichkeiten, u.a. können wir mit der Worksheets-Auflistung arbeiten, in der sämtliche Arbeitsblätter der aktuellen Arbeitsmappe verfügbar sind. Stellt sich die Arbeitsmappe mit ihren Arbeitsblättern z.B. wie in der nachfolgenden Abbildung dar, gehen wir (…und übrigens auch der Makrorekorder…) intuitiv wie folgt vor:

Worksheets(“Rohdaten”).Range(“A22”) = “Hallo Welt”

Excel VBA Live-Onlinekurs: Normaler Name vs. Codename in Excel-VBA

„Rohdaten” ist dabei der „normale“ Name der Tabelle, den auch die Benutzer*innen der Arbeitsmappe verwenden. Es gibt aber auch noch einen anderen, internen Namen des Arbeitsblatts, auch „Codename“ genannt, der nur in der VBA-Entwicklungsumgebung sichtbar ist:

Excel VBA Live-Onlinekurs: Normaler Name vs. Codename in Excel-VBA

Im Projektexplorer können wir sehen, dass jedes Worksheet zwei Namen hat: Einmal den „normalen“ Namen auf der rechten Seite („Rohdaten“) und einmal den „Codenamen“ auf der linken Seite (hier „Tabelle1“). Der „Codename“ lässt sich über das Eigenschaftsfenster vollkommen unabhängig vom „normalen Namen“ ändern:

Excel VBA Live-Onlinekurs: Normaler Name vs. Codename in Excel-VBA

Die alles entscheidende Frage: Warum beschäftigen wir uns überhaupt mit dem internen bzw. „Codenamen“ eines Worksheets? Warum verwenden wir bei der Programmierung mit VBA nicht einfach immer den „normalen“ Namen?

Es gibt zwei entscheidende Nachteile bei der Verwendung des „normalen“ Namens:

Zum einen könnten die Benutzer:innen der Excel-Arbeitsmappe auf die Idee kommen, dass das Arbeitsblatt nun nicht mehr „Rohdaten“ heißen soll sondern z.B. „Rohdaten 2021“. Schon funktionieren VBA-Programme bzw. Makros nicht mehr, da solche Umbenennungen an VBA vorbeigehen. Wir müssten unsere Programme also nach jeder Umbenennung eines Arbeitsblatts auf den neuen Namen anpassen. Das ist weder cool noch für die Anwender:innen logisch und auf jeden Fall immer gut für einen Anruf nach dem Motto: „Die XY-Mappe geht mal wieder nicht, ich habe aber nichts Besonderes gemacht…“

Abhilfe schafft die Verwendung des „Codenamens“ des Arbeitsblattes: Wenn wir unseren Zellzugriff in der Form

tbl_RawData.Range(“A22”) = “Hallo neue Welt”

codieren, ist der „normale“ Name des Arbeitsblatts vollkommen egal, da können die Benutzer:innen nun machen was sie wollen. Der interne Name bleibt immer gleich:

Excel VBA Live-Onlinekurs: Normaler Name vs. Codename in Excel-VBA

Ein zweiter großer Vorteil bei der Verwendung des „Codenamens“ ist die Tatsache, dass damit auch die AutoVervollständigen-Funktion richtig arbeitet (was bei der anderen Schreibweise mit dem „normalen“ Namen definitiv nicht der Fall ist – probieren Sie es gerne aus!)

Excel VBA Live-Onlinekurs: Normaler Name vs. Codename in Excel-VBA

Ich bin sicher, dass auch Sie nach diesem kleinen Experiment zukünftig die „Codenamen“ verwenden möchten, um Ihre VBA-Programme gleichzeitig leichter entwickeln und weniger fehleranfällig gestalten zu können. Es gibt – abgesehen von einem minimalen Mehraufwand für die Vergabe eines vernünftigen „Codenamens“ für die Worksheets – nur Vorteile. Versprochen!

Rabattinformationen

Wenn Sie sich für mehrere Office- oder IT-Themen anmelden, erhalten Sie für die zweite Buchung 5% und ab der dritten Buchung 10% Rabatt

Bei Gruppenanmeldungen von mindestens drei Personen erhalten Sie einen Gesamtrabatt von 5%. Bei Anmeldungen einer Gruppe für mindestens zwei Themen erhalten Sie nochmals 5% Rabatt.

Der Rabatt wird nicht im Buchungssystem angezeigt, sondern nachträglich auf der Rechnung gutgeschrieben. Weitere Infos erhalten Sie hier!

Rabatte sind nicht kombinierbar (z. B. mit dem Last-Minute-Rabatt). Es gilt jedoch immer der für Sie beste Rabatt.

Das Konzept unserer Live-Online-Kurse

Lernen Sie gezielt und nachhaltig – in Ihrem eigenen Tempo.

Der Schlüssel zu langfristigem Wissenserwerb liegt darin, nur so viel zu lernen, wie Sie anschließend auch direkt anwenden können. Dadurch bleibt das Gelernte nicht nur präsent, sondern verankert sich deutlich besser im Langzeitgedächtnis.

Nach vier Stunden intensiven Lernens lässt die Konzentration spürbar nach und der Lernerfolg nimmt ab. Deshalb ist es sinnvoll, die Kursdauer auf maximal vier Stunden zu beschränken, um ein optimales Gleichgewicht zwischen Aufnahmefähigkeit und Lerninhalt zu erreichen.

Profitieren Sie außerdem von unserer Nachbetreuung (in vielen Fällen sogar kostenlos). Diese individuelle Unterstützung hilft Ihnen dabei, das Erlernte durch regelmäßiges Üben zu festigen und sicher in den Arbeitsalltag zu integrieren.