Formüllü Hücreleri Korumak

Katılım
8 Mart 2007
Mesajlar
582
Excel Vers. ve Dili
excel 2000 Türkçe
Altın Üyelik Bitiş Tarihi
29-04-2021
Merhaba Arkadaşlar
Seyit Hocamın yazdığı aşağıdaki kod ile formüllü hücreleri koruyorum. Tek hücreyi veya tek sütundaki hücreleri silmemi engelliyor. Birden fazla sütündeki hücreleri seçtiğim zaman formüllü hücreleri silmeme izin veriyor. Birden fazla sütündeki hücreleri de seçtiğim zaman o hücrelerde formül varsa silmeme izin vermesin. Bu konuda yardımlarınıza ihtiyacım var yardımlarınız için şimdiden teşekkürler.

Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveCell.Select
If Target.HasFormula Then
Target.Offset(, 1).Activate
End If
End Sub
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Bu kodu denedik, sütunları dahi seçmeye izin vermiyor.
215578
 
Katılım
8 Mart 2007
Mesajlar
582
Excel Vers. ve Dili
excel 2000 Türkçe
Altın Üyelik Bitiş Tarihi
29-04-2021
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target(1, 1) = 0 Then ActiveSheet.Unprotect "123"
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

ActiveCell.Select
If Target.HasFormula Then
Target.Offset(, 1).Activate
End If

ActiveSheet.Protect "123"
If Target(1, 1) = 0 Then ActiveSheet.Unprotect "123"
End Sub
Eklediğim kod ile birlikte kullanıyorum. Kusura bakmayın yazdığınız kodu yanlış yere eklemişim.

Hocam kodu yukarıdaki gibi kullanıyorum. İçinde formül olmayan hücreleri de seçmeme izin vermiyor. İçinde formül olmayan birden fazla hücreyi seçtiğim zaman imleç başlangıç hücresine dönüyor.
 
Katılım
8 Mart 2007
Mesajlar
582
Excel Vers. ve Dili
excel 2000 Türkçe
Altın Üyelik Bitiş Tarihi
29-04-2021
Kod:
[CODE]Private Sub Worksheet_Change(ByVal Target As Range)

If Target(1, 1) = 0 Then ActiveSheet.Unprotect "123"

End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

ActiveCell.Select

If Target.HasFormula Then

Target.Offset(, 1).Activate

End If

ActiveSheet.Protect "123"

If Target(1, 1) = 0 Then ActiveSheet.Unprotect "123"

End Sub

Eklediğim kod ile birlikte kullanıyorum.

Birden fazla sütün seçilmesin demiyorum. Zaten benim istediğim birden fazla sütün seçilebilsin.
Birden fazla sütündeki hücreleri seçtiğim zaman formüllü hücreleri silmeme izin veriyor.

Benim istediğim hiç bir şekilde içinde formül olan hücreleri silmeme izin vermesin. Saygılar.[/CODE]
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Kodu kendinize göre uyarlayınız, formülleri silmez.
Kod:
[a1:k500].SpecialCells(2, 23) = Null
 
Katılım
8 Mart 2007
Mesajlar
582
Excel Vers. ve Dili
excel 2000 Türkçe
Altın Üyelik Bitiş Tarihi
29-04-2021
Kodu kendinize göre uyarlayınız, formülleri silmez.
Kod:
[a1:k500].SpecialCells(2, 23) = Null
Hocam size de çok zahmet verdim kusura bakmayın eklediğiniz kodu Mesaj 4 deki kodlarıma nasıl ekleyebilirim. Eklemeye çalıştım yapamadım hata verdi.
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Sizin nasıl bir mantık tasarladığınızı kestiremiyoruz, tasarınızı revize ediniz bence siz, kodu kendinize göre düzenleyip şu olaya atayıp deneyiniz, çift tıklama.
Kod:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
On Error Resume Next
Cancel = True
[a1:k500].SpecialCells(2, 23) = Null
End Sub
 
Katılım
8 Mart 2007
Mesajlar
582
Excel Vers. ve Dili
excel 2000 Türkçe
Altın Üyelik Bitiş Tarihi
29-04-2021
Çok teşekkürler Hocam ellerine sağlık.
 
Üst