• DİKKAT

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

sayfa koruması yapılmış yazdırma makrosu sorunu (1004)

Katılım
6 Nisan 2006
Mesajlar
50
Excel Vers. ve Dili
Excel 2003
Aşağıdaki makro ile aynı sayfadaki farklı hücreleri yazdırıyorum sayfa koruması yaptığımda " run time eror '1004'; " hatası veriyor sayfa korumasını kaldırınca normal yazıyor (bazı hücreleri kilitli hale getiridim) yardımcı olurmusunuz.


Kod:
Sub yazdır_A_Tıklat()
ActiveSheet.PageSetup.PrintArea = "$b$1:$k$54"
  Range("B7:K9 , B10:D14 , K10:K14 , B16:D20 , K16:K20 , B22:D26 , K22:K26 , B28:D30 , K28:K30 , B32, K32, B34:D36 , K34:K36 , B38:D41 , K38:K41 , B43, K43, B45, K45, B47:D53 , K47:K53 , B54:K54").Interior.ColorIndex = xlNone
ActiveSheet.PrintOut
  Range("B7:K9 , B10:D14 , K10:K14 , B16:D20 , K16:K20 , B22:D26 , K22:K26 , B28:D30 , K28:K30 , B32, K32, B34:D36 , K34:K36 , B38:D41 , K38:K41 , B43, K43, B45, K45, B47:D53 , K47:K53 , B54:K54").Interior.ColorIndex = 24
End Sub


Sub yazdır_B_Tıklat()
ActiveSheet.PageSetup.PrintArea = "$M$65:$W$122"
  Range("O68:P92,O94:P99,O101:P102").Interior.ColorIndex = xlNone
  Range("M65:W67,N68:N92,N94:N99,N101:N102,N103").Interior.ColorIndex = x1none
  ActiveSheet.PrintOut
  Range("M65:W67,N68:N92,N94:N99,N101:N102,N103").Interior.ColorIndex = 24
  Range("O68:P92,O94:P99,O101:P102").Interior.ColorIndex = 1
  
  
End Sub
 
Doğal olarak makro kilitli sayfaya yazamadığı için hata veriyor.

Size tavsiyem makronuzun başına ActiveSheet.UnPotect "xxx" , sonuna ise ActiveSheet.Potect "xxx" kodlarını eklemenizdir.
Bu şekilde makronuz çalışmadan önce sayfanın şifresini kaldıracak, işlem bittikten sonrada sayfa şifresini tekrardan oluşturacaktır.

Makronuzun işlem yaptığı hücrelerin kilitli olmamasınıda kontrol edebilirsiniz.
 
sn ripek
Kod:
Sub yazdır_A_Tıklat()
ActiveSheet.Unprotect "1"
ActiveSheet.PageSetup.PrintArea = "$b$1:$k$54"
  Range("B7:K9 , B10:D14 , K10:K14 , B16:D20 , K16:K20 , B22:D26 , K22:K26 , B28:D30 , K28:K30 , B32, K32, B34:D36 , K34:K36 , B38:D41 , K38:K41 , B43, K43, B45, K45, B47:D53 , K47:K53 , B54:K54").Interior.ColorIndex = xlNone
ActiveSheet.PrintOut
  Range("B7:K9 , B10:D14 , K10:K14 , B16:D20 , K16:K20 , B22:D26 , K22:K26 , B28:D30 , K28:K30 , B32, K32, B34:D36 , K34:K36 , B38:D41 , K38:K41 , B43, K43, B45, K45, B47:D53 , K47:K53 , B54:K54").Interior.ColorIndex = 24
ActiveSheet.Protect "1"
End Sub


Sub yazdır_B_Tıklat()
ActiveSheet.Unprotect "1"
ActiveSheet.PageSetup.PrintArea = "$M$65:$W$122"
  Range("O68:P92,O94:P99,O101:P102").Interior.ColorIndex = xlNone
  Range("M65:W67,N68:N92,N94:N99,N101:N102,N103").Interior.ColorIndex = x1none
  ActiveSheet.PrintOut
  Range("M65:W67,N68:N92,N94:N99,N101:N102,N103").Interior.ColorIndex = 24
  Range("O68:P92,O94:P99,O101:P102").Interior.ColorIndex = 1
  ActiveSheet.Protect "1"
  
  
End Sub
 
verdiğin kodları üstte verdiğim şekilde düzelltim ve oldu teşekkür ederim.
 
Geri
Üst