Private Sub Workbook_Open()
#1
Hallo,

in einer etwas größeren Tabelle, habe ich unter DieseArbeitsmappe folgenden Code stehen:

Code:
Option Explicit

Private Sub Workbook_Open()

Benutzermodus

End Sub

In der gleichen Arbeitsmappe soll aber noch stehen:

Code:
Option Explicit
Const strThisSheet = "B"         ' Name der Tabelle anpassen

Private Sub Workbook_Open()
    If Sheets(strThisSheet).Index > 1 Then
        Sheets(Sheets(strThisSheet).Index - 1).Activate
    Else
        Sheets(2).Activate
    End If
    Sheets(strThisSheet).Visible = xlSheetVeryHidden
End Sub

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
    Const strThisPWD = "Auskenner"
    Dim vPWD As Variant
    If Sheets(strThisSheet).Visible = xlSheetVisible And ActiveSheet.Name <> strThisSheet Then Exit Sub
    If Sh.Name = strThisSheet Then
        vPWD = MsgBox("Soll " & strThisSheet & " wieder versteckt werden?", vbYesNo + vbExclamation, "Tabelle verstecken")
        If vPWD = vbYes Then
            If Sheets(strThisSheet).Index > 1 Then
                Sheets(Sheets(strThisSheet).Index - 1).Activate
            Else
                Sheets(2).Activate
            End If
            Sheets(strThisSheet).Visible = xlSheetVeryHidden
        End If
    Else
        vPWD = InputBox("Bitte geben Sie das Passwort für " & strThisSheet & " an", "PWD zum öffnen")
        If vPWD = strThisPWD Then
            Sheets(strThisSheet).Visible = xlSheetVisible
            Sheets(strThisSheet).Activate
        Else
            MsgBox "Falsches Passwort!", vbOKOnly + vbCritical, "Nix da"
        End If
    End If
End Sub
Jetzt habe ich aber das Problem, das ich 2x Private Sub Workbook_Open() im Code habe. Auch umbenennen half nichts: Nur Fehlermeldungen! Siehe Foto

Weiß da jemand einen Rat?


Angehängte Dateien Thumbnail(s)
   
Antworten Top
#2
Hallo,

(26.10.2021, 13:10)Beltason schrieb: Weiß da jemand einen Rat?

Einfach alle Codes in eine einzige Sub packen.

Gruß Uwe
Antworten Top
#3
Hallo Ralf, danke für den schnellen Tip! Gleich ausprobiert, aber will auch nicht. Habe das jetzt so zusammengepackt untereinander. Denke das ich da was falsch habe.
Code:
Option Explicit

Private Sub Workbook_Open()

Benutzermodus

Const strThisSheet = "B"         ' Name der Tabelle anpassen


    If Sheets(strThisSheet).Index > 1 Then
        Sheets(Sheets(strThisSheet).Index - 1).Activate
    Else
        Sheets(2).Activate
    End If
    Sheets(strThisSheet).Visible = xlSheetVeryHidden
End Sub

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
    Const strThisPWD = "Auskenner"
    Dim vPWD As Variant
    If Sheets(strThisSheet).Visible = xlSheetVisible And ActiveSheet.Name <> strThisSheet Then Exit Sub
    If Sh.Name = strThisSheet Then
        vPWD = MsgBox("Soll " & strThisSheet & " wieder versteckt werden?", vbYesNo + vbExclamation, "Tabelle verstecken")
        If vPWD = vbYes Then
            If Sheets(strThisSheet).Index > 1 Then
                Sheets(Sheets(strThisSheet).Index - 1).Activate
            Else
                Sheets(2).Activate
            End If
            Sheets(strThisSheet).Visible = xlSheetVeryHidden
        End If
    Else
        vPWD = InputBox("Bitte geben Sie das Passwort für " & strThisSheet & " an", "PWD zum öffnen")
        If vPWD = strThisPWD Then
            Sheets(strThisSheet).Visible = xlSheetVisible
            Sheets(strThisSheet).Activate
        Else
            MsgBox "Falsches Passwort!", vbOKOnly + vbCritical, "Nix da"
        End If
    End If
End Sub
Antworten Top
#4
Dein Tip ging in die richtige Richtung! Blush Hat dann funktioniert 18
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste