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

Forumthread: Einbinden von variable in Sheets.Select

Einbinden von variable in Sheets.Select
02.02.2017 09:07:03
variable
Guten Tag :)
Ich habe in meiner Datei die Tabellenblätter "Eingabe 2014", "Eingabe 2015", "Eingabe 2016" und "Eingabe 2017".
Jedes Jahr kommt eine neue Liste dazu.
Ein Macro soll beim ausführen immer auf die Liste mit dem aktuellen Jahr im Namen zugreifen.
Ich habe also mit
Dim jahr as String
jahr = Worksheets ("Daten").Cells(401,1)
Die Variable Jahr definiert, und möchte nun diese in den Befehl
Sheets("Eingabe" & Jahr").Select
inbinden...
Das mit dem "&" funktioniert nur leider nicht, ich bekomme immer die Fehlermeldung
"Index außerhalb des gültigen Bereichs".
Wäre super wenn mir einer von euch Excelgenies helfen könnte :)
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Einbinden von variable in Sheets.Select
02.02.2017 09:27:49
variable
Hallo Hannes,
holt sich das Jahr aus dem aktuellen Datum
Dim Jahr As String
Jahr = Year(Date)
Sheets("Eingabe " & Jahr).Select
Gruß Werner
AW: Einbinden von variable in Sheets.Select
02.02.2017 10:07:48
variable
Vielen vielen Dank,
das klappt 1A :)
AW: Gerne u. Danke für die Rückmeldung. o.w.T.
02.02.2017 10:51:20
Werner
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Variablen in Sheets.Select einbinden in Excel VBA


Schritt-für-Schritt-Anleitung

Um in Excel VBA eine Variable in den Sheets.Select Befehl einzubinden, befolge diese Schritte:

  1. Definiere eine Variable für das Jahr:

    Dim Jahr As String
  2. Weise der Variable das aktuelle Jahr zu, z.B. aus einer Zelle:

    Jahr = Worksheets("Daten").Cells(401, 1)
  3. Nutze die Variable in deinem Sheets.Select Befehl:

    Sheets("Eingabe " & Jahr).Select

Stelle sicher, dass das Tabellenblatt mit dem Namen, den du generierst, tatsächlich existiert, um Fehler zu vermeiden.


Häufige Fehler und Lösungen

  • Fehlermeldung: "Index außerhalb des gültigen Bereichs"

    • Ursache: Das angegebene Blatt existiert nicht.
    • Lösung: Überprüfe den Namen des Blatts und die Zusammensetzung des Namens mit der Variable.
  • Problem mit dem &-Operator

    • Ursache: Der Operator könnte falsch verwendet werden.
    • Lösung: Stelle sicher, dass du die korrekte Syntax anwendest, z.B. Sheets("Eingabe " & Jahr).Select.

Alternative Methoden

Anstatt Sheets.Select zu verwenden, kannst du auch Activate nutzen, um ein Arbeitsblatt zu aktivieren:

Worksheets("Eingabe " & Jahr).Activate

Das hat den gleichen Effekt, ist jedoch oft klarer und wird bevorzugt, wenn du nur ein Arbeitsblatt aktivieren möchtest.


Praktische Beispiele

Hier ein Beispiel, wie du das aktuelle Jahr dynamisch in dein VBA-Skript einbinden kannst:

Sub ActivateCurrentYearSheet()
    Dim Jahr As String
    Jahr = Year(Date) ' Holt das aktuelle Jahr
    Sheets("Eingabe " & Jahr).Select
End Sub

Diese Methode ist besonders nützlich, wenn du regelmäßig mit aktuellen Daten arbeitest.


Tipps für Profis

  • Verwende Option Explicit am Anfang deines Moduls, um sicherzustellen, dass alle Variablen deklariert sind. Das hilft, Fehler frühzeitig zu erkennen.

  • Nutze If-Bedingungen, um zu überprüfen, ob das Arbeitsblatt existiert, bevor du versuchst, es auszuwählen:

    On Error Resume Next
    Sheets("Eingabe " & Jahr).Select
    If Err.Number <> 0 Then
      MsgBox "Das Blatt existiert nicht!"
      Err.Clear
    End If
    On Error GoTo 0

FAQ: Häufige Fragen

1. Wie aktiviere ich ein Blatt mit einer Variablen in VBA?
Nutze den Befehl Sheets("Blattname" & Variable).Select oder Worksheets("Blattname" & Variable).Activate.

2. Was kann ich tun, wenn das Blatt nicht existiert?
Setze eine Fehlerbehandlung ein, um den Fehler abzufangen und eine entsprechende Nachricht anzuzeigen.

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