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

Forumthread: Tabellenblätter über Codename ansprechen

Tabellenblätter über Codename ansprechen
30.03.2021 07:38:11
Leon
Ich möchte mehrere Tabellenblätter selektieren und ausdrucken.
Da die Mitarbeiter ganz gerne mal die Blattnamen ändern, sollen diese über ihre Codenamen angesprochen werden.
Sub gruppieren()
ThisWorkbook.Sheets(Array(Tabelle2, Tabelle4)).Select
Application.Dialogs(xlDialogPrint).Show
End Sub
"Tabelle2" und "Tabelle4" sind die von Excel vergebenen Codenamen.
Der verwendete Code erzeugt Laufzeitfehler 13 (Typen unverträglich).

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblätter über Codename ansprechen
30.03.2021 07:50:08
Klaus
Hallo Leon,
der Makrorekorder ist dein Freund! Jener macht:
Sheets(Array("Tabelle2", "Tabelle4")).Select
An den Anführungsstrichen siehst du, dass hier nicht der Codename des Blattes, sondern der eigene Name des Blattes angesprochen wird. Daraus folgt:
Sheets(Array(Tabelle2.Name, Tabelle4.Name)).Select
spricht über den Codenamen das korrekte Blatt an.
LG,
Klaus M.

Anzeige
Tabellenblätter über Codename ansprechen
30.03.2021 08:06:25
Leon
Hallo Klaus,
Sheets(Array(Tabelle2.Name, Tabelle4.Name)).Select
da stand offenbar jemand auf der Leitung...
Vielen Dank für Deine schnelle Hilfe. Hat alles bestens funktioniert.
Viele Grüße,
Leon
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Tabellenblätter über Codename ansprechen


Schritt-für-Schritt-Anleitung

  1. Öffne dein Excel-Dokument und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu, indem du mit der rechten Maustaste auf "VBAProject" klickst und "Einfügen" > "Modul" wählst.

  3. Kopiere den folgenden Code in das Modul:

    Sub gruppieren()
       Sheets(Array(Tabelle2.Name, Tabelle4.Name)).Select
       Application.Dialogs(xlDialogPrint).Show
    End Sub
  4. Ändere Tabelle2 und Tabelle4 entsprechend den Codenamen deiner Tabellenblätter.

  5. Speichere das Modul und schließe den VBA-Editor.

  6. Führe das Makro aus, um die gewünschten Tabellenblätter auszuwählen und zu drucken.


Häufige Fehler und Lösungen

  • Laufzeitfehler 13 (Typen unverträglich):

    • Dieser Fehler tritt auf, wenn du die Codenamen direkt ohne .Name ansprechen möchtest. Stelle sicher, dass du den Code wie folgt anpasst:
    Sheets(Array(Tabelle2.Name, Tabelle4.Name)).Select
  • Blattnamen wurden geändert:

    • Da die Mitarbeiter die Blattnamen ändern können, ist es wichtig, die Codenamen zu verwenden. Diese bleiben konstant, auch wenn der sichtbare Name des Blattes geändert wird.

Alternative Methoden

Wenn du kein VBA verwenden möchtest, kannst du das Excel-Tabellenblatt in einer Formel ansprechen, indem du den Code-Namen in Formeln nutzt:

  • Beispiel einer Formel, die auf ein Tabellenblatt verweist:

    =Tabelle2!A1

Diese Methode ist nützlich, wenn du dynamisch auf Daten zugreifen möchtest, ohne VBA zu verwenden.


Praktische Beispiele

Hier sind einige Beispiele, wie du in Excel VBA-Tabellenblätter über ihren Codename ansprechen kannst:

  1. Daten aus mehreren Blättern zusammenfassen:

    Sub datenZusammenfassen()
       Dim gesamt As Double
       gesamt = Tabelle1.Range("A1").Value + Tabelle2.Range("A1").Value
       MsgBox "Die Summe ist: " & gesamt
    End Sub
  2. Ein Blatt verstecken:

    Sub BlattVerstecken()
       Tabelle3.Visible = xlSheetHidden
    End Sub

Mit diesen einfachen VBA-Codes kannst du effizient mit deinen Excel-Tabellenblättern arbeiten.


Tipps für Profis

  • Nutze die F1-Taste im VBA-Editor, um schnell Hilfe zu spezifischen Objekten und Methoden zu erhalten.
  • Kommentiere deinen Code, um die Lesbarkeit zu erhöhen und die Wartung zu erleichtern.
  • Experimentiere mit der With-Anweisung, um wiederholte Objektreferenzen zu vermeiden:

    With Tabelle2
      .Range("A1").Value = "Test"
      .Range("B1").Value = "Test 2"
    End With

FAQ: Häufige Fragen

1. Wie finde ich den Codename eines Tabellenblattes?
Du kannst den Codename eines Tabellenblattes im VBA-Editor im Projektfenster sehen. Er wird direkt unter "Microsoft Excel-Objekte" angezeigt.

2. Kann ich auch andere Eigenschaften des Tabellenblatts mit dem Codename ansprechen?
Ja, du kannst viele Eigenschaften wie Visible, Name und Cells direkt über den Codename ansprechen. Beispiel:

Tabelle2.Visible = xlSheetVeryHidden

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige