Range Sınırını Genişletmek

Katılım
15 Mayıs 2008
Mesajlar
11
Excel Vers. ve Dili
2003 ingilizce
Arkadaşlar merhaba, aşağıdaki gibi bir kod var;
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Range("A1") >= 1 Then MsgBox "hatalı değer"
End Sub
Burda a1 hücresine 1 den büyük rakam yazıldığında box çıkıyor, ama ben bunu genişletmek istiyorum; yani a2'ye yada a300' 1'den büyük rakam yazarsam aynı box çıksın ( If Target.Range("A1:A50000") >= 1 Then MsgBox "hatalı değer" yazdım olmadı).
yardımcı olursanız çok sevinirim.
Herkese şimdiden çok teşekkür.
 

Ayhan Ercan

Özel Üye
Katılım
10 Ağustos 2005
Mesajlar
1,573
Excel Vers. ve Dili
Microsoft 365- Türkçe
Kod:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
[B][COLOR=red]For i = 1 To 500
[/COLOR][/B]If Target.Range[COLOR=red][B]("A" & i[/B][/COLOR]) >= 1 Then MsgBox "hatalı değer"
[B][COLOR=red]Next i[/COLOR][/B]
End Sub
"kırmızı ifadeler" ilave etmeniz gerekenlerdir. 1 to 500 deki 500 de alt sınırdır dilediğiniz rakamı oraya yazarak alt sınırı belirleyebilirsiniz.
 
Katılım
15 Mayıs 2008
Mesajlar
11
Excel Vers. ve Dili
2003 ingilizce
teşekkür

teşekkür ediyorum ancak son hücrede hata mesajı veriyor, ve alt sınır bile versek diğer alt hücrelerde kod aktif durumda; şöyle bir kod yazılamaz mı? Mesela a1 hücresinde d30 hücresine kadar olan hücrelerde aktif ol? Bu konuda yardımlarınızı bekliyorum
Şimdiden teşekkürler
 
Son düzenleme:

uzmanamele

Uzman
Uzman
Katılım
26 Eylül 2007
Mesajlar
9,424
Excel Vers. ve Dili
excel 2010
merhaba
aşağıdaki şekilde denermisiniz
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target >= 1 Then MsgBox "hatalı değer"
End Sub

veya
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Intersect(Target, Range("a1:d30")) Is Nothing Then Exit Sub
If Target >= 1 Then MsgBox "hatalı değer"
End Sub
 
Son düzenleme:
Katılım
19 Mayıs 2007
Mesajlar
154
Excel Vers. ve Dili
office 2003
benzer sorunum var !!!

örneği incelermisiniz.sayın Değerli uzmanamele
 
Üst