Murat Çeşmecioğlu

Kişisel Web Sitesi

Excel Sayfa Koruma Şifresi Kırma

Çoğunlukla Excel belgeleriyle uğraşıyorsanız ve bazı belgeler denklemleri korumak veya sırf kullanıcıyı sinir etmek için sayfa koruması ile korunuyorsa, bu şifreleri kırmanız gerektiği zamanlar olabilir. İşte aşağıdaki vba kodları bu işe yarıyor.

Excel belgesini açıp üstteki Geliştirisi sekmesinden Visual Basic butonuna tıklayarak editörü açın. Sol taraftaki listede dosyanın sayfalarının olduğu liste göreceksiniz. Şifresini kırmak istediğiniz dosyanın adına sağ tıklayın ve Insert menüsünden Module yazanı seçin. Listenin alt kısmına Module1 isminde yeni bir modül açılacaktır. Aşağıdaki kodları kopyalayın ve editörün sol üstündeki küçük Excel logolu butona basarak Excel’e geri dönün. Yine Geliştirici sekmesindeki Makrolar butonuna tıklayın. İki tane makro göreceksiniz. SifreAc yazan makroya çift tıklayın ve biraz bekleyin.

Şifre kırma işlemi bittiğinde tüm sayfaların şifrelerinin olduğu bir pencere göreceksiniz. Ayrıca alt kısımdaki metin alanını kopyalayarak Not Defteri vb. bir programa yedekleyebilirsiniz. Kırma işlemi bittiğinde tüm sayfaların korumaları kaldırımış olur.

Dim sonuc
Sub SifreAc()
sonuc = "Sayfaların Şifreleri"
For sayfaid = 1 To Worksheets.Count
Worksheets.Item(sayfaid).Activate
SifreKir
Next
InputBox sonuc, , sonuc
End Sub
Sub SifreKir()
On Error Resume Next
Dim i As Integer, j As Integer, k As Integer
Dim l As Integer, m As Integer, n As Integer
Dim i1 As Integer, i2 As Integer, i3 As Integer
Dim i4 As Integer, i5 As Integer, i6 As Integer
For i = 65 To 66
For j = 65 To 66
For k = 65 To 66
For l = 65 To 66
For m = 65 To 66
For i1 = 65 To 66
For i2 = 65 To 66
For i3 = 65 To 66
For i4 = 65 To 66
For i5 = 65 To 66
For i6 = 65 To 66
For n = 32 To 126
ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
If ActiveSheet.ProtectContents = False Then
sonuc = sonuc & vbCrLf & ActiveSheet.Name & " : " & Chr(i) & Chr(j) & Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
Exit Sub
End If
Next
Next
Next
Next
Next
Next
Next
Next
Next
Next
Next
Next
End Sub

5 Yorum

  1. #1 ilker tarafından, tarihinde

    dostum selam,
    ben bir türlü yapamıyorum 1 saat oldu hala dönüyor. nasıl bir yol izlemem gerekiyor.

  2. #3 Cemil tarafından, tarihinde

    Ya arkadaşım bu yazdığını hiç denedin mi sen herkes bunu yazıyor. Korumalı bir exce de visual basic çalışmıyor

    • #4 Murat Çeşmecioğlu tarafından, tarihinde

      Dosya koruması olan Excel belgeleri için değil, sayfa koruması olan dosyalar için bu kodlar. Karıştırıyor olabilir misiniz?
      Sayfa korumalı bir dosya açarken şifre sormaz. Hücreleri değiştirmeye çalıştığınızda korumalı hatası verir. Bu korumayı kaldırmak için şifre ister. Verdiğim kodlar bu şifreyi kaldırmak için.

      Açılışta sorduğu şifre, dosya koruması olarak adlandırılıyor. Yazıda belirttiğim kodlarla ilgisi yok.

Yorum Yazın

İsim (gerekli)

E-Posta (gerekli)

İnternet sitesi