Office: VBA - Ausblenden aller Tabellenblätter außer X

Helfe beim Thema VBA - Ausblenden aller Tabellenblätter außer X in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Guten Morgen, ich bin ziemlicher VBA Neuling und habe aktuell Probleme mit einer Datei, die ich entwickelt habe. Zu der Datei: Es handelt sich um... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von doms2601, 2. Juli 2025 um 10:39 Uhr.

  1. doms2601 Neuer User

    VBA - Ausblenden aller Tabellenblätter außer X


    Guten Morgen,

    ich bin ziemlicher VBA Neuling und habe aktuell Probleme mit einer Datei, die ich entwickelt habe.

    Zu der Datei:
    Es handelt sich um Daten, auf die lediglich ein bestimmter Personenkreis Zugriff haben soll.
    Beim Aufruf der Datei sollen daher alle Tabellenblätter, mit Ausnahme einer Startseite, ausgeblendet werden. Auf dieser Startseite ist eine Passworteingabe notwendig, um Zugriff auf alle Tabellenblätter zu erhalten.

    Die Datei funktioniert so, wie sie aktuell programmiert ist, gut.
    Einzige Problematik, die im Alltag etwas stört: Beim Start der Datei kommt jedes mal die folgende Fehlermeldung.
    VBA - Ausblenden aller Tabellenblätter außer X upload_2025-7-2_10-24-51.jpeg

    Den Zugriff aufs Debuggen kriege ich zwar via Passwortschutz des vba-Projekts unterdrückt, am liebsten wäre es mir aber, wenn die Meldung gar nicht erst kommen würde.

    Der Fehler dürfte darin liegen, dass er versucht alle Tabellenblätter auszublenden, wobei er beim letzten Tabellenblatt auf die Problematik stößt, dass es ansonsten keine offenen Tabellenblätter mehr geben würde. Ich müsste im Code also hinterlegen, dass es für das Ausblenden der Tabellenblätter eine Ausnahme gibt. Hierfür habe ich bisher nicht die für mich funktionierende Lösung gefunden.

    Bitte seid nachsichtig, ich bin wie gesagt ziemlich neu was VBA betrifft. Mir ist bewusst, dass die Lösung über Excel nicht optimal ist und es bessere Programme dafür gibt. Arbeitgeber- bzw. Admin-seitig sind wir aber sehr eingeschränkt, was Programme und Lizenzen abgeht, sodass wir uns einen Work-Around für unser Problem basteln mussten.

    Vielen Dank bereits jetzt für eure Unterstützung!

    Code:
    Private Sub Workbook_Open()
        ActiveWorkbook.Unprotect ("")
        Dim Sh As Worksheet
        For Each Sh In Worksheets
            Sh.Visible = xlSheetVeryHidden
        Next Sh
        ActiveWorkbook.Protect ("")
    End Sub
    
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
        ActiveWorkbook.Protect ("")
        ThisWorkbook.Save
    End Sub
     
  2. RPP63_neu
    RPP63_neu Erfahrener User
    Moin!
    Dann frag halt den Namen des Sheets ab, welches nicht ausgeblendet werden soll:
    Code:
    Private Sub Workbook_Open()
        ActiveWorkbook.Unprotect ("")
        Dim Sh As Worksheet
        For Each Sh In Worksheets
            If Sh.Name <> "Dingens" Then Sh.Visible = xlSheetVeryHidden
        Next Sh
        ActiveWorkbook.Protect ("")
    End Sub
    Zur Sicherheit dieses Vorgehens hast Du dankenswerterweise ja bereits etwas geschrieben.

    Gruß Ralf
     
  3. slowboarder Erfahrener User
    Hi
    du versuchst in deinem Code, alle Blätter auszublenden. Es muss aber immer eins sichtbarbleiben
    dh du solltest erst die Startseite einblenden (sicherheitshalber) und dann die anderen ausblenden:
    Code:
    dim sh as Worksheet
    with Sheets("Startsteite")
        .visible = xlsheetvisible
         for each sh in worksheets
            if sh.name <> .Name then sh.visible = xlsheetveryhidden
         next
    end with
    
    kleiner Tipp, damit dein Vorhaben nicht ganz so einfach auszutricksen ist:
    - mach das Ausblenden im BeforeSave-Event.
    dann wird die Datei mit ausgeblendeten Blättern gespeichert. Wenn du das Ausblenden erst im Workbook.Open-Event machst, dann kann man sie sie anschauen, wenn man die Makros zum öffnen deaktiviert.

    Gruß Daniel
     
  4. doms2601 Neuer User

    VBA - Ausblenden aller Tabellenblätter außer X

    Vielen Dank für eure Antworten! Beides hat funktioniert und die Datei lässt sich jetzt zunächst ohne das Fehlerfenster öffnen.

    Jetzt kommt das gleiche Fenster leider beim nächsten Makro, nämlich beim Makro zum Einblenden der Blätter nach Passworteingabe. Den Fehler schmeißt er mir bei Sh.Visible = xlSheetVisible. Komischerweise lief das vorher ohne Fehlermeldung durch.

    Code:
    Sub BlätterEinblenden()
    Dim Sh As Worksheet
        For Each Sh In Worksheets
            Sh.Visible = xlSheetVisible
        Next Sh
    Sh0.Activate
    End Sub
     
  5. RPP63_neu
    RPP63_neu Erfahrener User
    Ist
    Sh0.Activate
    ein Tippfehler?
     
  6. doms2601 Neuer User
    "Sh0" ist das Tabellenblatt, welches nach dem Einblenden aller Tabellenblätter angezeigt werden soll.
     
  7. slowboarder Erfahrener User
    Wenn du im davor laufenden Makro den Mappenschutz aktivierst (ActiveWorkbook.Protect), dann musst du ihn hier wieder aufheben.
    mit aktivem Mappenschutz kannst du keine Blätter ein- oder ausblenden.
     
  8. doms2601 Neuer User

    VBA - Ausblenden aller Tabellenblätter außer X

    Der Wald und die Bäume ... Danke! So simpel, aber nicht gesehen :D
     
Thema:

VBA - Ausblenden aller Tabellenblätter außer X

Die Seite wird geladen...
  1. VBA - Ausblenden aller Tabellenblätter außer X - Similar Threads - VBA Ausblenden Tabellenblätter

  2. VBA Code für Zeilen ausblenden einblenden mit JA/Nein

    in Microsoft Excel Hilfe
    VBA Code für Zeilen ausblenden einblenden mit JA/Nein: Hallo, habe eine Exceltabelle, bei der ich bei einer Zelle eine Ja/Nein abfrage mache, wenn in der Zelle Nein steht, dann soll ein bestimmter Zeilenbereich, den ich definieren möchte, ausgeblendet...
  3. VBA: Spalten auf anderen Worksheeds in der Mappe ausblenden.

    in Microsoft Excel Hilfe
    VBA: Spalten auf anderen Worksheeds in der Mappe ausblenden.: Hallo zusammen, Eine Tabelle mit 9 Worksheets, Datenblatt, Studien, Studie_1 ...Studie_7. Auf dem Deckblatt werden in Zelle B4-B10 die Namen der Studien eingetragen. Davon abhängig ob ein Name...
  4. VBA; Zelle voll/leer einblenden/ausblenden

    in Microsoft Excel Hilfe
    VBA; Zelle voll/leer einblenden/ausblenden: Hallo, ich möchte in einer Tabelle folgendes machen: steht in A4 was drinnen dann Blende Spalte H ein und Blende Spalte I aus. steht nichts in A4 dann Blende Spalte H aus und Blende Spalte I ein....
  5. Excel-VBA: Zellen sperren und gleichzeitig ausblenden lassen.

    in Microsoft Excel Hilfe
    Excel-VBA: Zellen sperren und gleichzeitig ausblenden lassen.: Hallo Leute, ich habe folgendes Problem: In meinem Arbeitsblatt werden bestimmte Zeilen Ein oder Ausgeblenden wenn eine bestimmte Bedingung aktiv ist. Dazu nutze ich folgenden Coe: If...
  6. VBA Spalten aus- und einblenden trotz Blattschutz

    in Microsoft Excel Hilfe
    VBA Spalten aus- und einblenden trotz Blattschutz: Guten Tag Ich habe eine Übersicht, in dem die Urlaubszeiträume meiner Kollegen eingetragen werden sollen. Neben Namen, Vornamen und Zeitraum sollen noch weitere spezifische Daten eingetragen...
  7. Zeilen über Kontrollkästchen und abhängig von Zelleninhalt ausblenden

    in Microsoft Excel Hilfe
    Zeilen über Kontrollkästchen und abhängig von Zelleninhalt ausblenden: Hallo, ich habe eine Liste mit 30 Platzhaltern (=Zeilen 11:41) um Nutzer anzulegen. In Zelle C7 wird mir automatisch die Summe der Nutzer angezeigt, wenn die Nutzernamen in die Zeilen eingetragen...
  8. VBA Code Spalte für bestimmte Nuter ausblenden

    in Microsoft Excel Hilfe
    VBA Code Spalte für bestimmte Nuter ausblenden: Hallo Zusammen, wir nutzen im Betrieb zusätzlich eine Excel Liste für unsere Auftragsübersicht. Diese wir auf dem Server gespeichert. Da ich aber nicht möchte, dass alle die darauf Zugriff...
Schlagworte:
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden