Soru Butonla Sayfa Gizle / Göster

Erdogan3434

Altın Üye
Katılım
14 Ocak 2022
Mesajlar
78
Excel Vers. ve Dili
Office 2013 Professional, Türkçe
Altın Üyelik Bitiş Tarihi
25-01-2028
Merhaba Hocalarım,

Bir konu hakkında desteğinizi rica ediyorum. Excelim de değişebilen bir sayfa yapısı var. Bu nedenle ben şifreli bir butonla belirttiğim sayfaları gizlemek ve yine aynı butona bastıktan sonra şifre girerek o gizlediğim sayfaları aktif hale getirmek istiyorum. Gizlenen sayfalar aşağıdaki sayfa menüsüne sağ tıklayarak görünür hale getirilemesin ya da o durumda da yine şifre sorsun istiyorum.

Örn: Sayfa1, Sayfa2, Sayfa3 var. Butona ilk bastığımda şifre girerek Sayfa1 ile Sayfa3 gizlensin. Aynı butona tekrar bastığımda şifre girerek görünmez hale getirdiğim sayfalar görünür olsun.

Saygılarımla.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,167
Excel Vers. ve Dili
2019 Türkçe
Merhaba.
Aşağıdaki kodu deneyiniz.
Kod:
Sub SayfaFizleGoster()
    Dim Sayfalar As Variant
    Dim Bak As Integer
    Dim Parola As String
    Dim ParolaDogu As Boolean
    
    Parola = "123"
    Sayfalar = Array("Sayfa1", "Sayfa3")

    For Bak = 0 To UBound(Sayfalar)
        If Worksheets(Sayfalar(Bak)).Visible = xlSheetVisible Then
            Worksheets(Sayfalar(Bak)).Visible = xlSheetVeryHidden
        Else
            If ParolaDogu = False Then
                If Parola = InputBox("Lütfen parola giriniz.") Then
                    ParolaDogu = True
                Else
                    MsgBox "Girdiğiniz parola yanlış. Lütfen kontrol ederek yeniden deneyiniz.", vbExclamation
                    Exit Sub
                End If
            End If
            Worksheets(Sayfalar(Bak)).Visible = xlSheetVisible
        End If
    Next
End Sub
 

Erdogan3434

Altın Üye
Katılım
14 Ocak 2022
Mesajlar
78
Excel Vers. ve Dili
Office 2013 Professional, Türkçe
Altın Üyelik Bitiş Tarihi
25-01-2028
Merhaba.
Aşağıdaki kodu deneyiniz.
Kod:
Sub SayfaFizleGoster()
    Dim Sayfalar As Variant
    Dim Bak As Integer
    Dim Parola As String
    Dim ParolaDogu As Boolean
   
    Parola = "123"
    Sayfalar = Array("Sayfa1", "Sayfa3")

    For Bak = 0 To UBound(Sayfalar)
        If Worksheets(Sayfalar(Bak)).Visible = xlSheetVisible Then
            Worksheets(Sayfalar(Bak)).Visible = xlSheetVeryHidden
        Else
            If ParolaDogu = False Then
                If Parola = InputBox("Lütfen parola giriniz.") Then
                    ParolaDogu = True
                Else
                    MsgBox "Girdiğiniz parola yanlış. Lütfen kontrol ederek yeniden deneyiniz.", vbExclamation
                    Exit Sub
                End If
            End If
            Worksheets(Sayfalar(Bak)).Visible = xlSheetVisible
        End If
    Next
End Sub
Muhteşem olmuş elinize sağlık çok teşekkür ederim.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,167
Excel Vers. ve Dili
2019 Türkçe
Rica ederim. Kolay gelsin.
 
Üst