• DİKKAT

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

sayfayı korumada makro çalışmıyor

Katılım
16 Haziran 2006
Mesajlar
77
Excel Vers. ve Dili
excel 2003
arkadaşlar.formüller silinmesin diye şifre koymak istiyorum.şifre koyduğum zaman makrolar hata veriyor.ne yapmalıyım.
 

Ekli dosyalar

Selamlar,

Kullandığınız kodların başına şifreyi kaldıran kodu hemen bitişinede sayfa korumasını ekleyen kodu yazarsanız çözüme ulaşabilirsiniz. Aşağıdaki örnek kod yapısını kullanabilirsiniz.

Kod:
Option Explicit
 
Sub ÖRNEK()
    ActiveSheet.Unprotect "12345"
    'Kodlarınız...
    ActiveSheet.Protect "12345"
End Sub
 
sayın korhan yeni başladığım için kodu nerelere ekleyeceğimi bilmiyorum işin açıkçası.ekteki dosyayı siz ekleyip gönderebilirmisiniz.birde yapmış olduğunuz işlemi detaylı bir şekilde yazabilirseniz sizleri bu konuda rahatsız etmemiş olurum
 
Merhaba,
Aşağıdaki gibi deneyin:
Kod:
Sub ÖRNEK()
ActiveSheet.Unprotect "12345"  
......KODLARINIZ..... 
ActiveSheet.Protect 12345, DrawingObjects:=False, Contents:=True, Scenarios:= _
        False, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
        AllowFormattingRows:=True, AllowFiltering:=True
End Sub
 
merhaba,

Aşağıdaki gibi yaptım fakat kod çalışmıyor.
yardımlarınız için şimdiden teşekkürler
selam



Option Explicit

Sub ÖRNEK()
ActiveSheet.Unprotect "12345"



Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [c:l]) Is Nothing Then Exit Sub
If Target.Column = 3 Then Cells(Target.Row, "B") = Now
If Target.Column = 12 Then Cells(Target.Row, "M") = Now

End Sub

ActiveSheet.Protect 12345, DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowFiltering:=True

End Sub



" compile error : only comments may appear after en sub..." diyor.
 
merhaba
hata vermesi normal, 2 farklı kodu iç içe yazmışsınız.
ne yapmak istediğinizi örnek dosya üzerinde açıklayınız.

olsa-olsa yöntemiyle, istediğiniz aşağıdaki kod sanıyorum

Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, [c:l]) Is Nothing Then Exit Sub
ActiveSheet.Unprotect "12345"
If Target.Column = 3 Then Cells(Target.Row, "B") = Now
If Target.Column = 12 Then Cells(Target.Row, "M") = Now
ActiveSheet.Protect 12345, DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowFiltering:=True
End Sub
 
Merhaba,
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
ActiveSheet.Unprotect 12345
If Target.Column = 3 Then Cells(Target.Row, "B") = Now
If Target.Column = 12 Then Cells(Target.Row, "M") = Now
ActiveSheet.Protect 12345, DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowFiltering:=True
End Sub

Kodunuzun doğru yazımı bu; ancak kodların bu şeklinde bir mantık hatası olacağından istediğiniz sonucu alamayacaksınız. Çünkü bu koda göre hücre değiştiğinde koruma devreye girecek, sonrasında sayfada koruma olduğu için veri gireneyeceksiniz.
 
örnek dosyaya ihtiyaç varmı ki?

tek bir tane makro var (otomatik tarih) :

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [c:l]) Is Nothing Then Exit Sub
If Target.Column = 3 Then Cells(Target.Row, "B") = Now
If Target.Column = 12 Then Cells(Target.Row, "M") = Now
End Sub

sayfada otomatik tarihlerin yer alacağı sutunlar kilitli fakat sayfayı korumaya alıp şifre koyduğum zaman bu kod çalışmıyor. yukarıda lemruk'un dediğini yapmaya çalıştım fakat yapamadım.

selamlar
 
kusura bakma uzmanamele yazdığın kodu görmeden cevaplamaya çalıştım. fakat ben yazana kadar cevaplar gelmiş bile...
hatamı anladım.
teşekkürler lemruk teşekkürler uzmanamele...
 
Ekli örneği inceleyiniz. Kodun çalışması için C ve L sütunlarının kilidinin açık olması gerekli.
 

Ekli dosyalar

Geri
Üst