Vba: evet/hayır yanıtlarını içeren bir mesaj kutusu nasıl oluşturulur?


Kullanıcının Evet veya Hayır’ı seçebileceği bir mesaj kutusu oluşturmak için VBA’da aşağıdaki sözdizimini kullanabilirsiniz:

 Sub MsgBoxYesNo()

    'ask user if they want to multiply two cells
    UserResponse = MsgBox(" Do you want to multiply cells A1 and B1? ", vbYesNo)

    'perform action based on user response
    If UserResponse = vbYes Then
      Range(" C1 ") = Range(" A1 ") * Range(" B1 ")
    Else
      MsgBox “ No Multiplication was PerformedEnd If

End Sub

Bu özel makro, kullanıcıya A1 ve B1 hücrelerini çarpmak isteyip istemediğini soran bir mesaj kutusu oluşturur.

Kullanıcı “Evet” seçeneğini tıklarsa her iki hücre de çarpılır ve sonuç C1 hücresinde görüntülenir.

Kullanıcı “Hayır”ı tıklarsa, çarpma işleminin yapılmadığını bildiren yeni bir mesaj kutusu görünür.

Kullanıcının tıklaması için “Evet” ve “Hayır” düğmelerini ekleyen şeyin vbYesNo ifadesi olduğunu unutmayın.

Aşağıdaki örnekler bu sözdiziminin pratikte nasıl kullanılacağını göstermektedir.

Örnek: Evet/Hayır yanıtlarını içeren bir mesaj kutusu oluşturma

Excel sayfamızın A1 ve B1 hücrelerinde aşağıdaki iki değere sahip olduğumuzu varsayalım:

Diyelim ki kullanıcıya bir mesaj kutusu görüntüleyen ve A1 ve B1 hücrelerindeki değerleri çarpmak isteyip istemediğini soran bir makro oluşturmak istiyoruz.

Bunun için aşağıdaki makroyu oluşturabiliriz:

 Sub MsgBoxYesNo()

    'ask user if they want to multiply two cells
    UserResponse = MsgBox(" Do you want to multiply cells A1 and B1? ", vbYesNo)

    'perform action based on user response
    If UserResponse = vbYes Then
      Range(" C1 ") = Range(" A1 ") * Range(" B1 ")
    Else
      MsgBox “ No Multiplication was PerformedEnd If

End Sub

Bu makroyu çalıştırdığımızda aşağıdaki mesaj kutusu belirir:

VBA msgbox evet veya hayır

Evet’i tıklarsak, makro A1 ve B2 hücrelerindeki değerleri çarpacak ve sonucu C1 hücresinde gösterecektir:

Ancak Hayır’a tıklarsak yeni bir mesaj kutusu görünecektir:

Mesaj kutusu bize bir önceki mesaj kutusunda Hayır’a tıkladığımızdan bu yana herhangi bir çarpma işlemi yapılmadığını söylüyor.

Ek kaynaklar

Aşağıdaki eğitimlerde VBA’da diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:

VBA: Mesaj kutusuna yeni bir satır nasıl eklenir
VBA: Yeni sayfalar nasıl eklenir
VBA: Bölmeler nasıl dondurulur

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir