• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Makro ile sayfa koruma ve kaldırma ile ilgili bir soru

Katılım
5 Haziran 2007
Mesajlar
64
Excel Vers. ve Dili
2007
Türkçe
Merhaba kolay gelsin. 300 sayfadan oluşan bir çalışma kitabım var. Tek makro ile tüm sayfaları "sayfa koruma" altına alma ve yeine tek tıklamayla tüm sayfaların korumasını kaldırmak istiyorum. biraz araştırdım ve aşağıdaki iki makroyu buldum:

Sub sifrele()
For a = 1 To Sheets.Count
Sheets(a).Protect "123" = True
Next
End Sub

Sub sifreac()
For a = 1 To Sheets.Count
Sheets(a).Unprotect "123" = True
Next
End Sub

Anasayfaya iki buton yerleştirip bu makroları atadım. Çok güzel de çalışıyorlar; ancak sayfa korumalarını kaldırırken ben şifre sormasını istiyorum. Mevcut haliyle hiç birşey sormadan direkt sayfaların korumalarını kaldırıyor, yanlışlıkla anlamayan birisi açıp sayfalardaki formülleri bozabilir endişesindeyim. Ne yapabilirim? Teşekkür ederim şimdiden.

NOT: Şu haliyle tek tek sayfaların korumalarını kaldırmak istediğimde ise şifre kutusu açılıyor ve "şifre hatalı" uyarısı veriyor (şifre olarak 123 yazıyorum). Ama anasayfaya yerleştirdiğim butona atadığım yukarıdaki makro ile şifresiz olarak tüm sayfaların korumasını kaldırabiliyorum.

Yukarıda da belirttiğim gibi, makro ile tüm sayfa korumalarını kaldırırken bir şifre sormasını istiyorum.
 
Aşağıdaki şekilde deneyin

Kod:
Sub sifreac()
Dim Sifre As String
Sifre = InputBox("Lütfen şifreyi giriniz.")
If Not Sifre = 123 Then
    MsgBox "Girdiğiniz şifre yanlış."
    Exit Sub
End If

For a = 1 To Sheets.Count
Sheets(a).Unprotect "123" = True
Next
End Sub
 
Sayın dalgalikur, cevabınız için çok teşekkür ederim, evet tam istediğim gibi. Birşey daha sormak istiyorum, aslında daha önce bulmuştum, hatta indirip üzerinde bazı değişiklikler yaptığımı da çok iyi hatırlıyorum; ancak uzun zaman önceydi ve şimdi bulamadım. "Sayfa Koruma" butonu oluşturdum demiştim yukarıdaki verdiğim kodu kullanarak. O butona bastığımda tüm sayfalar korunuyor; ancak ben "personel" ve "data" adlı iki sayfanın korunmasını istemiyorum. Yani oluşturduğum butona basınca personel ve data isimli sayfalar hariç tüm sayfalar korunsun istiyorum. Sayfa koruma kaldırma ile ilgili sorunumu zaten çözmüştünüz onunla ilgili bir sıkıntı yok. Tekrar desteğiniz ve emeğiniz için çok teşekkür ederim.
İyi çalışmalar,
İsmail.
 
Kod:
Sub sifrele()
    For a = 1 To Sheets.Count
        If Not Sheets(a).Name = "Sayfa1" And Not Sheets(a).Name = "Sayfa3" Then 'Büyük küçük harf duyarlı yani "Personel" ile "personel" eşit değildir
            Sheets(a).Protect "123" = True
        End If
    Next
End Sub
 
Geri
Üst