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

Forumthread: Erstes Tabellenblatt / Sheet fixieren

Erstes Tabellenblatt / Sheet fixieren
08.11.2012 13:29:55
Niebel
Hallo liebe Leute,
gibt es die Möglichkeit das erste Tabellenblatt in meiner Arbeitsmappe so zu fixieren, dass es nicht verschwindet, wenn man z.B. am letzten Tabellenblatt angekommen ist?
Es ist eine Mappe mit mehr als 50 Blättern. Bei folgendem VBA-Eintrag sagt er mir immer, dass er die 5 Zeile nicht zuordnen kann...
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Sh.Index  actIndex Then
Application.EnableEvents = False
actIndex = Sh.Index
Sheets("Teilnehmer").Move Before:=ActiveSheet
Sh.Activate
Application.EnableEvents = True
End If
End Sub

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Erstes Tabellenblatt / Sheet fixieren
08.11.2012 13:44:27
Niebel
Vielleicht sollte ich noch dazu schreiben, dass es sich dabei um den Laufzeitfehler 9 handelt. Index außerhalb des gültigen Bereichs. Die 5. Zeile Sheets("Teilnehmer").Move Before:=ActiveSheet wird dabei gelb markiert.

AW: Erstes Tabellenblatt / Sheet fixieren
08.11.2012 14:17:19
Rudi
hallo,
dann gibt's das Blatt nicht.
Gruß
Rudi

Anzeige
AW: Erstes Tabellenblatt / Sheet fixieren
08.11.2012 14:32:08
Niebel
Komisch...
Aber auch wenn ich dann es umbenenne, funktioniert es immer noch aus den gleichen Gründen nicht...
Habe das jetzt mal so gemacht.
Sheets("Tabelle1").Move Before:=ActiveSheet
klappt immer noch nicht

AW: Erstes Tabellenblatt / Sheet fixieren
08.11.2012 15:29:07
Rudi
Hallo,
das funktioniert bei mir:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Application.EnableEvents = False
Sheets("Teilnehmer").Move before:=Sh
Sh.Activate
Application.EnableEvents = True
End Sub

Gruß
Rudi

Anzeige
AW: Erstes Tabellenblatt / Sheet fixieren
08.11.2012 16:29:22
Niebel
Ohh man, das ist mir jetzt peinlich...
ein reines Layer 8 Problem ;)
Ich habe doch tatsächlich beim benennen des ersten Blattes: "Teilnehmer", nach Teilnehmer noch ein Leerzeichen gelassen, so dass es Sheets("Teilnehmer ").Move before:=Sh sein muss...
Entschuldigt bitte meine Dummheit!
Aber besten Dank für Eure Hilfe, ohne Euch würde ich wohl immer noch verzweifeln...
DANKE!
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Erstes Tabellenblatt in Excel fixieren


Schritt-für-Schritt-Anleitung

Um das erste Tabellenblatt in Excel zu fixieren, sodass es nicht verschwindet, wenn Du durch die Arbeitsmappe navigierst, kannst Du die folgende VBA-Methode verwenden:

  1. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke im Projektfenster auf „DieseArbeitsmappe“.

  3. Füge den folgenden VBA-Code ein:

    Private Sub Workbook_SheetActivate(ByVal Sh As Object)
       Application.EnableEvents = False
       Sheets("Teilnehmer").Move Before:=Sh
       Sh.Activate
       Application.EnableEvents = True
    End Sub
  4. Stelle sicher, dass das erste Tabellenblatt den Namen „Teilnehmer“ hat. Andernfalls musst Du den Namen im Code entsprechend anpassen.

  5. Schließe den VBA-Editor und teste die Funktionalität.


Häufige Fehler und Lösungen

Ein häufiger Fehler, der auftreten kann, ist der Laufzeitfehler 9, der anzeigt, dass der Index außerhalb des gültigen Bereichs liegt. Dieser Fehler tritt häufig auf, wenn das Blatt, das Du ansprechen möchtest, nicht existiert oder falsch benannt ist.

Lösung:

  • Überprüfe den Namen des Tabellenblatts. Achte darauf, dass keine zusätzlichen Leerzeichen vorhanden sind. Wenn Du beispielsweise Sheets("Teilnehmer ") verwendest, wird ein Fehler angezeigt, da das Blatt nicht gefunden wird.

Alternative Methoden

Falls Du keine VBA-Lösung verwenden möchtest, kannst Du auch die Funktion "Fenster fixieren" nutzen, um bestimmte Zeilen oder Spalten sichtbar zu halten.

  1. Wähle die Zeile unter der Zeile aus, die Du fixieren möchtest.
  2. Gehe zu dem Menüpunkt „Ansicht“.
  3. Klicke auf „Fenster fixieren“ und wähle „Obere Zeile fixieren“.

Diese Methode ist jedoch nicht dasselbe wie das Fixieren eines gesamten Tabellenblatts und eignet sich eher für die Anpinnung von Zeilen oder Spalten.


Praktische Beispiele

Nehmen wir an, Du hast eine Excel-Arbeitsmappe mit mehreren Tabellenblättern und möchtest immer auf das erste Blatt zugreifen, während Du in anderen Blättern arbeitest:

  • Wenn Du das erste Tabellenblatt „Teilnehmer“ nennst, wird es durch den oben genannten VBA-Code automatisch vor jedem aktiven Blatt positioniert.

Tipps für Profis

  • VBA anpassen: Wenn Du mehrere Tabellenblätter hast, die Du fixieren möchtest, kannst Du den Code erweitern, um mehrere Blätter gleichzeitig zu bearbeiten.
  • Namen einheitlich halten: Achte darauf, dass die Namen Deiner Blätter klar und einheitlich sind, um Verwirrung zu vermeiden.
  • Backups erstellen: Bevor Du VBA-Code hinzufügst oder änderst, ist es ratsam, ein Backup Deiner Arbeitsmappe zu erstellen.

FAQ: Häufige Fragen

1. Wie kann ich mehrere Tabellenblätter fixieren?
Du kannst den VBA-Code anpassen, um mehrere Blätter zu fixieren. Füge einfach weitere Sheets("Name").Move Before:=Sh Zeilen für jedes Blatt hinzu, das Du fixieren möchtest.

2. Funktioniert das Fixieren in Google Sheets?
In Google Sheets kannst Du die Funktion „Zeile fixieren“ nutzen, aber es gibt keine direkte Entsprechung zum Fixieren eines gesamten Tabellenblatts wie in Excel. Du kannst jedoch die oberste Zeile oder Spalte fixieren.

3. Was kann ich tun, wenn mein Blatt nicht gefunden wird?
Überprüfe den Namen des Blattes auf Tippfehler oder unerwünschte Leerzeichen. Achte darauf, dass der Name im VBA-Code genau mit dem Namen des Arbeitsblatts übereinstimmt.

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