Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Syntax für Blattnummer statt Blattname

Forumthread: Syntax für Blattnummer statt Blattname

Syntax für Blattnummer statt Blattname
Jörg-HH
Guten Abend zusammen,
ich kann schreiben Set wks = Worksheets("DBank") usw. - dann entsteht bei Änderung des Blattnamens das Problem, daß VBA diese nicht mitbekommt.
Kann ich nicht statt dessen die Blattnummer verwenden, die sich nicht mehr ändert? - Mit Set wks = Worksheets.Tabelle35 hab ich es versucht - geht aber nicht... Wie ist denn die Syntax?
Danke für'n Tip...
Jörg
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Syntax für Blattnummer statt Blattname
29.09.2009 18:23:33
JogyB
Hi,
Set wks = Tabelle35
Gruss, Jogy
AW: Syntax für Blattnummer statt Blattname
29.09.2009 18:24:16
PeTeR
Hallo Jörg,
Set wks = Worksheets(3) sollte funktionieren
Viel Erfolg
PeTeR
AW: Syntax für Blattnummer statt Blattname
29.09.2009 18:30:38
ransi
HAllo Jörg
Grunsätzlich hast du 3 Möglichkeiten auf ein Blatt zu referenzieren.
Du kannst ein Blatt mit dem Namen ansprechen.
Set wks = Worksheets("DBank")
Dann tritt das Problem auf das du grade hast.
Du kannst ein blatt mit dem Index ansprechen.
Set WKS=Worksheets(1)
Dann hast du aber das Problem das VBA ins Schwimmen gerät wenn das Blatt verschoben wird.
Du kannst das Blatt mit dem Codename ansprechen.
Set wks = Tabelle1
Das ist der Name der im VBA-Editor angezeigt wird.
Das ist die sicherste Methode.
Umbenennen und verschieben wird ignoriert.
Probleme gibts erst wenn die Mappe in einer anderen Sprachversion geöffnet wird.
Im Englischen heisst das dann nicht mehr Tabelle1 sondern Sheet1.
DA verschluckt sich dann VBA.
ransi
Anzeige
AW: Syntax für Blattnummer statt Blattname
29.09.2009 18:34:42
JogyB
Hi.
Gegen das "Verschlucken" hilf ein Umbennen der Tabelle im Eigenschaftenfenster des VBE - siehe Eigenschaft (Name).
Gruss, Jogy
Danke, Jungs...
29.09.2009 18:45:50
Jörg-HH
...besonders Ransi für die ausführliche Nachhilfestunde :-))
da hatte ich einen größeren Nachholbedarf
Schönen Abend
Jörg
;
Anzeige
Anzeige

Infobox / Tutorial

Syntax für Blattnummer statt Blattname in Excel


Schritt-für-Schritt-Anleitung

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor in Excel zu öffnen.
  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf "VBAProject (DeineMappe)", wähle "Einfügen" und dann "Modul".
  3. Verwende die Blattnummer: Um auf ein Blatt über die Blattnummer zuzugreifen, verwende folgende Syntax:
    Set wks = Worksheets(3) ' Beispiel für das dritte Blatt

    Dies funktioniert, solange das Blatt nicht verschoben wird.

  4. Alternativ den Codename verwenden: Du kannst auch den Codename des Blattes verwenden, um Probleme mit Blattnamen zu vermeiden:
    Set wks = Tabelle1 ' Dies funktioniert unabhängig vom Blattnamen
  5. Teste den Code: Führe den Code aus, um sicherzustellen, dass die Referenzierung korrekt funktioniert.

Häufige Fehler und Lösungen

  • Fehler: „Laufzeitfehler 9: Index außerhalb des gültigen Bereichs“

    • Lösung: Überprüfe, ob die Blattnummer existiert. Wenn du versuchst, auf ein Blatt mit einer Nummer zuzugreifen, die nicht vorhanden ist, tritt dieser Fehler auf.
  • Fehler: „Das angegebene Blatt ist nicht im Projekt“

    • Lösung: Stelle sicher, dass du den richtigen Codename verwendest oder dass das Blatt tatsächlich existiert.

Alternative Methoden

  • Verwendung von Worksheets: Du kannst auch den Namen des Blattes verwenden, aber beachte, dass dies bei Namensänderungen problematisch sein kann:

    Set wks = Worksheets("DBank")
  • Indexierung: Die Verwendung der Blattnummer ist sicherer, es sei denn, die Blätter werden häufig verschoben. In diesem Fall kann der Codename die beste Wahl sein.


Praktische Beispiele

  • Zugriff auf das erste Blatt:

    Set wks = Worksheets(1)
  • Zugriff auf ein Blatt mit dem Codename:

    Set wks = Tabelle2
  • Schleife durch alle Blätter:

    Dim i As Integer
    For i = 1 To Worksheets.Count
       Debug.Print Worksheets(i).Name
    Next i

Tipps für Profis

  • Codename anpassen: Um den Codename anzupassen, öffne den Eigenschaften-Panel im VBA-Editor und ändere den „Name“-Wert. Dies hilft, Probleme bei Sprachversionen zu vermeiden.

  • Verwendung von Variablen: Speichere häufig verwendete Blätter in Variablen, um den Code lesbarer und wartungsfreundlicher zu machen.


FAQ: Häufige Fragen

1. Wie kann ich die Blattnummer in einer Excel-Formel verwenden? Du kannst die Blattnummer nicht direkt in einer Formel verwenden. Stattdessen solltest du die Funktion INDIREKT nutzen, um auf einen bestimmten Zellbereich basierend auf der Blattnummer zuzugreifen.

2. Was ist der Unterschied zwischen Blattnamen und Codenamen? Der Blattname ist der Name, den du in Excel siehst, während der Codename im VBA-Editor verwendet wird. Der Codename bleibt konstant, selbst wenn der Blattname geändert wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige