• DİKKAT

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

Sayfa Kilitleme Kodunu Hızlandırma

  • Konbuyu başlatan Konbuyu başlatan quesh
  • Başlangıç tarihi Başlangıç tarihi
Katılım
25 Mart 2010
Mesajlar
340
Excel Vers. ve Dili
2007,2010
Arkadaşlar merhaba
Çalışma Kitabındaki tüm sayfalardaki belirttiğim aralıklardaki hücreleri kilitleyen bir kodum var, ancak kilitleme faslı çok uzun sürüyor. (Kilidi açmak gayet çabuk). acaba satırların yerlerinin değiştirilmesiyle kodun çalışması hızlanabilir mi diye şüphelendim.
Kilitleme Kodu aşağıdaki gibidir.

Private Sub CommandButton1_Click()
For Each Sayfa In ActiveWorkbook.Worksheets
With Sayfa
Sayfa1.Unprotect "mh"
Sayfa1.Cells.Locked = False
Sayfa1.Cells.FormulaHidden = False
Sayfa1.Range("a1:I11").Locked = True
Sayfa1.Range("a1:I11").FormulaHidden = True
Sayfa1.Protect "mh"
Sayfa10.Unprotect "mh"
Sayfa10.Cells.Locked = False
Sayfa10.Cells.FormulaHidden = False
Sayfa10.Range("a1:k17").Locked = True
Sayfa10.Range("a1:k17").FormulaHidden = True
Sayfa10.Protect "mh"
Sayfa11.Unprotect "mh"
Sayfa11.Cells.Locked = False
Sayfa11.Cells.FormulaHidden = False
Sayfa11.Range("a1:k17").Locked = True
Sayfa11.Range("a1:k17").FormulaHidden = True
Sayfa11.Protect "mh"
Sayfa12.Unprotect "mh"
Sayfa12.Cells.Locked = False
Sayfa12.Cells.FormulaHidden = False
Sayfa12.Range("a1:k17").Locked = True
Sayfa12.Range("a1:k17").FormulaHidden = True
Sayfa12.Protect "mh"
Sayfa13.Unprotect "mh"
Sayfa13.Cells.Locked = False
Sayfa13.Cells.FormulaHidden = False
Sayfa13.Range("a1:k17").Locked = True
Sayfa13.Range("a1:k17").FormulaHidden = True
Sayfa13.Protect "mh"
Sayfa14.Unprotect "mh"
Sayfa14.Cells.Locked = False
Sayfa14.Cells.FormulaHidden = False
Sayfa14.Range("a1:k17").Locked = True
Sayfa14.Range("a1:k17").FormulaHidden = True
Sayfa14.Protect "mh"
Sayfa15.Unprotect "mh"
Sayfa15.Cells.Locked = False
Sayfa15.Cells.FormulaHidden = False
Sayfa15.Range("a1:k17").Locked = True
Sayfa15.Range("a1:k17").FormulaHidden = True
Sayfa15.Protect "mh"
Sayfa16.Unprotect "mh"
Sayfa16.Cells.Locked = False
Sayfa16.Cells.FormulaHidden = False
Sayfa16.Range("a1:k17").Locked = True
Sayfa16.Range("a1:k17").FormulaHidden = True
Sayfa16.Protect "mh"
Sayfa17.Unprotect "mh"
Sayfa17.Cells.Locked = False
Sayfa17.Cells.FormulaHidden = False
Sayfa17.Range("a1:k17").Locked = True
Sayfa17.Range("a1:k17").FormulaHidden = True
Sayfa17.Protect "mh"
Sayfa18.Unprotect "mh"
Sayfa18.Cells.Locked = False
Sayfa18.Cells.FormulaHidden = False
Sayfa18.Range("a1:k17").Locked = True
Sayfa18.Range("a1:k17").FormulaHidden = True
Sayfa18.Protect "mh"
Sayfa19.Unprotect "mh"
Sayfa19.Cells.Locked = False
Sayfa19.Cells.FormulaHidden = False
Sayfa19.Range("a1:k17").Locked = True
Sayfa19.Range("a1:k17").FormulaHidden = True
Sayfa19.Protect "mh"
Sayfa2.Unprotect "mh"
Sayfa2.Cells.Locked = False
Sayfa2.Cells.FormulaHidden = False
Sayfa2.Range("a1:k17").Locked = True
Sayfa2.Range("a1:k17").FormulaHidden = True
Sayfa2.Protect "mh"
Sayfa20.Unprotect "mh"
Sayfa20.Cells.Locked = False
Sayfa20.Cells.FormulaHidden = False
Sayfa20.Range("a1:k17").Locked = True
Sayfa20.Range("a1:k17").FormulaHidden = True
Sayfa20.Protect "mh"
Sayfa21.Unprotect "mh"
Sayfa21.Cells.Locked = False
Sayfa21.Cells.FormulaHidden = False
Sayfa21.Range("a1:k17").Locked = True
Sayfa21.Range("a1:k17").FormulaHidden = True
Sayfa21.Protect "mh"
Sayfa22.Unprotect "mh"
Sayfa22.Cells.Locked = False
Sayfa22.Cells.FormulaHidden = False
Sayfa22.Range("a1:k17").Locked = True
Sayfa22.Range("a1:k17").FormulaHidden = True
Sayfa22.Protect "mh"
Sayfa23.Unprotect "mh"
Sayfa23.Cells.Locked = False
Sayfa23.Cells.FormulaHidden = False
Sayfa23.Range("a1:k17").Locked = True
Sayfa23.Range("a1:k17").FormulaHidden = True
Sayfa23.Protect "mh"
Sayfa24.Unprotect "mh"
Sayfa24.Cells.Locked = False
Sayfa24.Cells.FormulaHidden = False
Sayfa24.Range("a1:k17").Locked = True
Sayfa24.Range("a1:k17").FormulaHidden = True
Sayfa24.Protect "mh"
Sayfa25.Unprotect "mh"
Sayfa25.Cells.Locked = False
Sayfa25.Cells.FormulaHidden = False
Sayfa25.Range("a1:k17").Locked = True
Sayfa25.Range("a1:k17").FormulaHidden = True
Sayfa25.Protect "mh"
Sayfa3.Unprotect "mh"
Sayfa3.Cells.Locked = False
Sayfa3.Cells.FormulaHidden = False
Sayfa3.Range("a1:k17").Locked = True
Sayfa3.Range("a1:k17").FormulaHidden = True
Sayfa3.Protect "mh"
Sayfa4.Unprotect "mh"
Sayfa4.Cells.Locked = False
Sayfa4.Cells.FormulaHidden = False
Sayfa4.Range("a1:k17").Locked = True
Sayfa4.Range("a1:k17").FormulaHidden = True
Sayfa4.Protect "mh"
Sayfa5.Unprotect "mh"
Sayfa5.Cells.Locked = False
Sayfa5.Cells.FormulaHidden = False
Sayfa5.Range("a1:k17").Locked = True
Sayfa5.Range("a1:k17").FormulaHidden = True
Sayfa5.Protect "mh"
Sayfa6.Unprotect "mh"
Sayfa6.Cells.Locked = False
Sayfa6.Cells.FormulaHidden = False
Sayfa6.Range("a1:k17").Locked = True
Sayfa6.Range("a1:k17").FormulaHidden = True
Sayfa6.Protect "mh"
Sayfa7.Unprotect "mh"
Sayfa7.Cells.Locked = False
Sayfa7.Cells.FormulaHidden = False
Sayfa7.Range("a1:k17").Locked = True
Sayfa7.Range("a1:k17").FormulaHidden = True
Sayfa7.Protect "mh"
Sayfa8.Unprotect "mh"
Sayfa8.Cells.Locked = False
Sayfa8.Cells.FormulaHidden = False
Sayfa8.Range("a1:k17").Locked = True
Sayfa8.Range("a1:k17").FormulaHidden = True
Sayfa8.Protect "mh"
Sayfa9.Unprotect "mh"
Sayfa9.Cells.Locked = False
Sayfa9.Cells.FormulaHidden = False
Sayfa9.Range("a1:k17").Locked = True
Sayfa9.Range("a1:k17").FormulaHidden = True
Sayfa9.Protect "mh"

End With
Next Sayfa
MsgBox "Tüm Sayfalar Kilitlendi ", vbInformation, "MURAT H."
End Sub
 
Merhaba,

Kilitleme dışında tutulacak sayfanız var mı?

Ayrıca, "Sayfa1.Range("a1:I11")" bu koddaki Sayfa1 in adını söylermisiniz.

.
 
Merhaba,

Kilitleme dışında tutulacak sayfanız var mı?

Ayrıca, "Sayfa1.Range("a1:I11")" bu koddaki Sayfa1 in adını söylermisiniz.

.

Kilitleme dşında tutulacak sayfam yok, tüm sayfalarım kilitlenecek Ömer Bey.
Sayfa1'in adı ; ANASAYFA

Ayrıca Sayfa1'in yani ANASAYFA'nın da kilit aralığının A1:L41 olmasında bir sakınca yok.
Kilitleme işlemini Sayfa1(ANASAYFA) üzerinde bulunan bir CommandButton ile yaptırıyorum.

Saygılar.
 
Bu şekilde denermisiniz..

Kod:
Private Sub CommandButton1_Click()
 
For i = 1 To Worksheets.Count
    With Sheets(i)
        .Unprotect "mh"
        .Cells.Locked = False
        .Cells.FormulaHidden = False
        If .Name = "ANASAYFA" Then
            .Range("A1:I11").Locked = True
            .Range("A1:I11").FormulaHidden = True
        Else
            .Range("A1:K17").Locked = True
            .Range("A1:K17").FormulaHidden = True
        End If
        .Protect "mh"
    End With
Next i
 
End Sub
.
 
Bu şekilde denermisiniz..

Kod:
Private Sub CommandButton1_Click()
 
For i = 1 To Worksheets.Count
    With Sheets(i)
        .Unprotect "mh"
        .Cells.Locked = False
        .Cells.FormulaHidden = False
        If .Name = "ANASAYFA" Then
            .Range("A1:I11").Locked = True
            .Range("A1:I11").FormulaHidden = True
        Else
            .Range("A1:K17").Locked = True
            .Range("A1:K17").FormulaHidden = True
        End If
        .Protect "mh"
    End With
Next i
 
End Sub
.

Ömer Bey,Teşekkürler Tüm sayfalarımın kilitleniyor olması hiç aklıma gelmediği için
Private Sub CommandButton1_Click()
For Each sayfa In ActiveWorkbook.Worksheets
With sayfa
.Unprotect "mh"
.Cells.Locked = False
.Cells.FormulaHidden = False
.Range("A1:l41").Locked = True
.Range("A1:l41").FormulaHidden = True
.Protect "mh"
End With
Next sayfa
MsgBox "Tüm Sayfalar Kilitlendi ", vbInformation, "MURAT H."
End Sub

kodunu kullanmamıştım, şimdi bu kodu kullandım ve sorunu çözdüm, zaten bu kodu da yine böyle bir başlıkta siz bana söylemiştiniz.
Teşekkürler yardımlarınız için :)
saygılar.
 
Geri
Üst