Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Tabellenblatt suchen mit VBA

Tabellenblatt suchen mit VBA
17.01.2014 15:28:17
Sabine
Hallo liebe Profis,
ich möchte in meiner aktiven Arbeitsmappe nach dem Arbeitsblatt suchen, welches mit xyz beginnt und mich in dieses Arbeitsblatt dann in Zelle A1 stellen.
Wie bekommt man das denn hin?
Gruß
Sabine

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
mit If Left ... then
17.01.2014 15:33:50
Matthias
Hallo Sabine
Was aber wenn mehrere Blätter mit xyz beginnen?
Wohin willst Du dann?
Gruß Matthias

AW: mit If Left ... then
17.01.2014 15:38:26
Sabine
Mehrere Blätter mit xyz, wird nicht vorkommen.
If Left
aber wie geht es dann weiter, ich bin doch noch totaler Anfänger :-(
Gruß Sabine

Anzeige
AW: mit If Left ... then
17.01.2014 15:39:08
Sabine
Mehrere Blätter mit xyz, wird nicht vorkommen.
If Left
aber wie geht es dann weiter, ich bin doch noch totaler Anfänger :-(
Gruß Sabine

hier das Beispiel mit Left ...
17.01.2014 15:44:48
Matthias
Hallo
Code in ein algemeines Modul
Option Explicit
Sub MeineTabelle()
Dim x As Long
Application.ScreenUpdating = False
For x = 1 To Worksheets.Count
If Left(Worksheets(x).Name, 3) = "xyz" Then
Worksheets(x).Activate
Cells(1, 1).Select
Exit For
End If
Next
End Sub
Gruß Matthias

Anzeige
AW: Vielen lieben Dank!!!!! o. T.
17.01.2014 15:50:25
Sabine

Danke für die Rückmeldung ... owT
17.01.2014 16:05:05
Matthias
;

Forumthreads zu verwandten Themen

Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Tabellenblatt mit VBA suchen: Schritt für Schritt


Schritt-für-Schritt-Anleitung

Um in deiner Excel-Arbeitsmappe nach einem Tabellenblatt zu suchen, das mit "xyz" beginnt, kannst du den folgenden VBA-Code verwenden:

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

  2. Klicke im Menü auf Einfügen und wähle Modul.

  3. Kopiere den folgenden Code in das Modul:

    Option Explicit
    Sub MeineTabelle()
       Dim x As Long
       Application.ScreenUpdating = False
       For x = 1 To Worksheets.Count
           If Left(Worksheets(x).Name, 3) = "xyz" Then
               Worksheets(x).Activate
               Cells(1, 1).Select
               Exit For
           End If
       Next
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

  5. Drücke ALT + F8, wähle MeineTabelle und klicke auf Ausführen.

Jetzt wird das erste Tabellenblatt, das mit "xyz" beginnt, aktiviert und du wirst in Zelle A1 positioniert.


Häufige Fehler und Lösungen

  • Fehler: "Laufzeitfehler 9: Index außerhalb des gültigen Bereichs."

    • Lösung: Stelle sicher, dass du die richtige Anzahl an Arbeitsblättern in deiner Arbeitsmappe hast und dass mindestens ein Blatt mit "xyz" existiert.
  • Fehler: Kein Blatt wird aktiviert.

    • Lösung: Überprüfe, ob der Blattname tatsächlich mit "xyz" beginnt. Der Code ist case-sensitive.

Alternative Methoden

  1. Blatt suchen ohne VBA:

    • Du kannst auch die Suchfunktion in Excel nutzen: Drücke CTRL + F, gebe "xyz" ein und klicke auf Blatt suchen. Dies ist jedoch nur eine manuelle Lösung.
  2. Verwendung von Excel-Funktionen:

    • Eine Funktion wie SVERWEIS kann helfen, wenn du eine Liste von Blättern hast, aber sie ist nicht so direkt wie der VBA-Code.

Praktische Beispiele

  • Angenommen, du hast die folgenden Blätter: "xyz1", "xyz2", "abc1". Mit dem oben genannten VBA-Code wird "xyz1" aktiviert, da es das erste Blatt ist, das mit "xyz" beginnt.

  • Wenn du einen anderen Präfix wie "abc" verwenden möchtest, ändere einfach die Zahl im Left-Befehl:

    If Left(Worksheets(x).Name, 3) = "abc" Then

Tipps für Profis

  • Optimierung des Codes: Verwende Application.DisplayAlerts = False, um Pop-ups zu vermeiden, wenn du Blätter aktivierst.
  • Erweiterung des Codes: Du kannst den Code erweitern, um alle Blätter zu durchlaufen und in einer Liste aufzulisten, anstatt nur das erste zu aktivieren.
  • Fehlerbehandlung: Implementiere Fehlerbehandlungsroutinen, um sicherzustellen, dass dein Code auch bei unerwarteten Eingaben stabil bleibt.

FAQ: Häufige Fragen

1. Kann ich den Code auch in Excel 365 verwenden?
Ja, der VBA-Code funktioniert in allen modernen Excel-Versionen, einschließlich Excel 365.

2. Was passiert, wenn mehrere Blätter mit "xyz" beginnen?
Der Code aktiviert nur das erste gefundene Blatt. Möchtest du alle aktivieren, musst du den Code anpassen.

3. Wie finde ich ein Blatt mit einem anderen Namen?
Ändere den Wert im Left-Befehl, um nach einem anderen Präfix zu suchen.

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