• DİKKAT

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

FORMUL BOZULMASINA KARŞI UYARI MESAJI

  • Konbuyu başlatan Konbuyu başlatan amelie
  • Başlangıç tarihi Başlangıç tarihi
Katılım
7 Ocak 2005
Mesajlar
236
Excel Vers. ve Dili
Office Excel 2003 Tr/İng.
FORMUL BOZULMASINA KARÞI UYARI MESAJI

Arkadaşlar selam!
herhangibir hücrededeki herhangibir formulün silinmesi durumunda kullanıcıyı uyaran bir mesaj oluşturularbilir mi acaba? görüşleriniz için şimdiden teşekkür ederim.
 
Aşağıdaki gibi bir kod işinizi görecektir sanıyorum. Bu kodda formülün A1 hücresinde olduğunu kabul edilmiştir. Bu hücre seçildiğinde otomatik olarak uyarı verip değişikliğe izin vermeyecektir. Bu kod formülün bulunduğu sayfanın kod sayfasına yazılmalıdır.

[vb:1:d12c5d09b5]Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If ActiveCell.Address = "$A$1" Then
MsgBox "bu hücrede değişiklik yapamazsınız"
End If
End Sub
[/vb:1:d12c5d09b5]
 
Alternatif:

Formullü hücre(ler)' nin haricindeki diğer hücrelerin kiliti kaldırılır ve sayfa koruma yapılırsa, sorun çözülür.
 
Sayın Raider ve sayın Leventm iki çözüm için de çok teşekkür ederim.Ancak sayın leventm çözümünüzde şöyle birdurum var hücre seçildiği anda mesaj geliyor bu da çok formüllü bir sayfa içinde çok fazla gerejsiz uyarı mesajına yol açabilir.Bunun yerine
yani hücreye gelindiği anda değil de hücrede değişiklik yapılası durumunda bu mesajı verebilir mi bir de bunu çalışma sayfasındaki mevcut tüm formülleri kapsacak biçimde olabilir mi?Teşekkür ederim.
 
Sayfanızda çok sayıda formül bulunması durumunda her formül bulunan hücrenin makroda tanımlanması gerekir,bu durumda yüzlerce formül söz konusu ise makro çok uzun ve karmaşık olacağından en güzel çözüm bence Sn Raider'in önerdiği çözümdür.
 
Sayfanın Kod Kısmına Þunları yazın;
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For Each Item In Selection
If Mid(Item.Formula, 1, 1) = "=" Then
MsgBox "Burada Formül Vardır.Silmeyin." & Item.Address(rowAbsolute:=False, _
columnAbsolute:=False) & " is: " & Item.Formula, vbInformation
End If
Next
End Sub


Edit :Sayın Leventm Mesajı gönderdikten sonra yazınızı gördüm.Pardon.
 
Geri
Üst