Telefonszámunk: 1-472-0679

Hozzászólás: Jogosultságok kezelése

Kezdőlap Fórumok Excel témák Jogosultságok kezelése Hozzászólás: Jogosultságok kezelése

#5811
delila
Felhasználó

    Kiegészítettem a makrót azzal, hogy ha a saját jelszavaddal lépsz be, minden lap látható legyen, és a lapvédelmet is levettem róluk.

    Private Sub Workbook_Open()
        Dim lap As Integer, jelszo As String
        
        For lap = 2 To Sheets.Count 'lapok láthatóságának megszüntetése, védelme
            Sheets(lap).Protect Password:="SzuperTitkosJelszo"
            Sheets(lap).Visible = xlSheetVeryHidden
        Next
        
        'Jelszó bekérése
        jelszo = Application.InputBox("Kérem a jelszót", "Jelszó bekérése", , , , , , Type:=2)
        
        'Saját jelszavad esetén minden lap láthatóvá tétele, zárolás megszüntetése
        If jelszo = "Saját_jelszavam" Then
            For lap = 2 To Sheets.Count 'lapok láthatóvá tétele, védelem megszüntetése
                Sheets(lap).Unprotect Password:="SzuperTitkosJelszo"
                Sheets(lap).Visible = xlSheetVisible
            Next
        Else  'A jelszóhoz kötött munkalap meghatározása
            Select Case jelszo
                Case "jelszo_1": lap = 2
                Case "jelszo_2": lap = 3
                Case "jelszo_3": lap = 4
                Case "jelszo_4": lap = 5
                Case "jelszo_5": lap = 6
                Case "jelszo_6": lap = 7
                Case "jelszo_7": lap = 8
            End Select
            Sheets(lap).Visible = xlSheetVisible    'Az adott lap láthatóvá tétele
        End If
    End Sub