Bir hücrede yazan verinin If olarak karşılığı

hakki83

Altın Üye
Katılım
30 Eylül 2021
Mesajlar
553
Excel Vers. ve Dili
Excel 2016 Türkçe 32 Bit
Altın Üyelik Bitiş Tarihi
30-09-2026
Merhabalar

VBA Kod dilinde
If ile başlayan

Eğer B5 hücresinde ALi123 varsa

ifadesi, kod satırı olarak nasıl yazılır?
Ya da benzer başka bir örnek

Eğer A2 hücresinde 123 yazıyorsa

gibi ifadeler
kod olarak nasıl yazılır?
Farklı alternatif değişik birkaç örnek olursa da iyi olur.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,374
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

If Range("B5") = "Ali123" Then MsgBox "B5 Hücresinin değeri Ali123'tür"

If Range("A2") = 123 Then MsgBox "A2 Hacresinin değeri 123'tür"

Bir hücreyi karşılaştırırken Metin değerleri Çift tırnak içinde , rakamsal değerler ise doğrudan yazılır.

En basit haliyle sorunuzun yanıtı bu.
 

hakki83

Altın Üye
Katılım
30 Eylül 2021
Mesajlar
553
Excel Vers. ve Dili
Excel 2016 Türkçe 32 Bit
Altın Üyelik Bitiş Tarihi
30-09-2026
Sayın hocam teşekkür ederim.
Bir dosya gönderiyorum, istediğim şeyi anlatmaya çalışayım.

(Bu arada ben ilk önce = ifadesini <> ile değiştirdim. Çünkü ihtiyacım olan sanırım oymuş)

Eğer A2 hücresinde 123 yazıyorsa msgbox çalışmasın.
Eğer A2 hücresinde 456 yazıyorsa msgbox çalışmasın.
Eğer A2 hücresinde 789 yazıyorsa msgbox çalışmasın.

Tanımladığım bu üç değer dışında farklı bir sayı var ise o zaman msgbox çalışsın.
 

Ekli dosyalar

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
C++:
Sub Düğme1_Tıkla()
    If Range("A2") <> 123 And Range("A2") <> 456 And Range("A2") <> 789 Then
        MsgBox "Hatalı Veri"
    End If
End Sub
 

hakki83

Altın Üye
Katılım
30 Eylül 2021
Mesajlar
553
Excel Vers. ve Dili
Excel 2016 Türkçe 32 Bit
Altın Üyelik Bitiş Tarihi
30-09-2026
C++:
Sub Düğme1_Tıkla()
    If Range("A2") <> 123 And Range("A2") <> 456 And Range("A2") <> 789 Then
        MsgBox "Hatalı Veri"
    End If
End Sub
Sayın hocam
Mesela bu satırları gerçek dosyaya uyarlarken, daha çok veri olacağından, biraz daha rahat kolay görüp değiştirebilmek için, If ile başlayan satırı, alt alta yazma şansımız var mı?
Yani gönderdiğim dosyaya benzer şekilde olabilir mi?
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,314
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Alternatif;

C++:
Sub Düğme1_Tıkla()
    Select Case Range("A2").Value
        Case 123, 456, 789
        Case Else
            MsgBox "Hatalı veri!", vbCritical
    End Select
End Sub
Ya da;

C++:
Sub Düğme1_Tıkla()
    If Range("A2") <> 123 Then
        If Range("A2") <> 456 Then
            If Range("A2") <> 789 Then
                MsgBox "Hatalı veri!", vbCritical
            End If
        End If
    End If
End Sub
 
Üst