Tabellenblätter Passwort einblenden/ausblenden!

Über eine Startseite sollen alle Tabellenblätter nur mit Passwort eingeblendet werden können. Diese sind in der Regel ausgeblendet "xlSheetVeryHidden". Auswahl über eine UserForm. Wird auf die Startseite zurückgegangen wird das entsprechende Tabellenblatt wieder ausgeblendet.

Tabellenblätter Passwort einblenden/ausblenden...[ZIP, 60 KB]

' Code in ein Modul
Option Explicit
Option Private Module
Sub Alle_Ausblenden()
Dim wksSheet As Worksheet
For Each wksSheet In ThisWorkbook.Worksheets
If wksSheet.Name <> "Start" Then
wksSheet.Visible = xlSheetVeryHidden
End If
Next wksSheet
End Sub
Sub UF_Show()
UserForm1.Show
End Sub

' Code in UserForm1
Option Explicit
Private Sub UserForm_Activate()
Dim wksSheet As Worksheet
For Each wksSheet In ThisWorkbook.Worksheets
If wksSheet.Name <> "Start" And wksSheet.Name <> "Pass" Then
ComboBox1.AddItem (wksSheet.Name)
End If
Next wksSheet
ComboBox1.ListIndex = 0
With TextBox1
.Text = ""
.PasswordChar = "*"
.MaxLength = 5
.SetFocus
End With
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub CommandButton1_Click()
If Trim(TextBox1.Text) = "" Then
MsgBox "Kennwort fehlt", vbOKOnly, "Nachricht"
TextBox1.SetFocus
ElseIf TextBox1.Text <> ThisWorkbook.Worksheets("Pass") _
.Range(ComboBox1.Value) Then
MsgBox "Kennwort falsch, wiederholen / abbrechen", _
vbOKOnly, "Nachricht"
TextBox1.Text = ""
TextBox1.SetFocus
Else
ThisWorkbook.Worksheets _
(ComboBox1.Value).Visible = xlSheetVisible
Application.Goto ThisWorkbook.Worksheets _
(ComboBox1.Value).Range("A1"), True
Unload Me
End If
End Sub
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = 0 Then Cancel = True
End Sub

' Code in diese Arbeitsmappe
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call Alle_Ausblenden
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Sh.Name = "Start" Then Call Alle_Ausblenden
End Sub

Kommentare

Beliebte Posts aus diesem Blog

Formeln - auch Array - per VBA eintragen...

Alle Dateien eines Ordners - Optional mit Unterordner

Excel -> Word in Textmarken (Bookmarks)...