Mesaj Kutusundan Gelen Sonuca Göre İşlem Yap - Microsoft Excel


MsgBox ile gösterilen mesajda MsgBox üzerinde hangi tuşa basıldıysa ona göre işlem yapılmasını sağlayan alternatif bir kod aşağıdadır.

Kod


Option Explicit

Sub MesajKutusuSonucunaGoreIslemYap()
    Dim sonuc As Integer
    Dim metin As String
    
    metin = "Örnek işleme devam edilsin mi?"
    
    sonuc = MsgBox(metin, vbYesNoCancel + vbQuestion, "Soru")
    
    If sonuc = vbYes Then
        Range("A1") = "Örnek işleme devam edildi."
    ElseIf sonuc = vbNo Then
        Range("A1") = "Örnek işleme devam edilmedi."
    ElseIf sonuc = vbCancel Then
        Range("A1") = "Örnek işlem iptal edildi."
    End If
End Sub

Kod (Açıklamalı)


Option Explicit

Sub MesajKutusuSonucunaGoreIslemYap()
    '--------------------------------------------------
    'MsgBox sabitleri sayı ile temsil edildiğinden
    'değişkeni Integer olarak tanımlandı.
    '--------------------------------------------------
    Dim sonuc As Integer
    Dim metin As String
    
    '--------------------------------------------------
    'Mesaj metnini bir değişkene aktar.
    '--------------------------------------------------
    metin = "Örnek işleme devam edilsin mi?"
    
    '--------------------------------------------------
    'MsgBox tuşlarına basıldığında
    'gelen sonucu değişkene aktar.
    '--------------------------------------------------
    sonuc = MsgBox(metin, vbYesNoCancel + vbQuestion, "Soru")
    
    '--------------------------------------------------
    'Mesaj sonucuna göre işlem yaptır.
    '--------------------------------------------------
    If sonuc = vbYes Then
        Range("A1") = "Örnek işleme devam edildi."
    ElseIf sonuc = vbNo Then
        Range("A1") = "Örnek işleme devam edilmedi."
    ElseIf sonuc = vbCancel Then
        Range("A1") = "Örnek işlem iptal edildi."
    End If
End Sub

Etiketler
microsoft excel açıklamalı içerik microsoft excel vba