Cara Menggunakan MsgBox dan InputBox VBA

MsgBox dalam VBA adalah fungsi yang digunakan untuk menampilkan pesan dalam bentuk kotak dialog atau jendela pop-up pada pengguna. Pesan tersebut dapat berupa informasi, peringatan, atau permintaan konfirmasi dari pengguna.


Cara Menggunaan MsgBox

Secara umum, sintaks dari MsgBox adalah sebagai berikut:

MsgBox(prompt[, buttons] [, title] [, helpfile, context])
  • prompt (wajib) adalah pesan atau teks yang akan ditampilkan pada kotak dialog. Prompt dapat berupa string atau ekspresi yang menghasilkan string.
  • buttons (opsional) adalah nilai konstanta yang menentukan jenis tombol yang akan ditampilkan pada kotak dialog. Nilai konstanta ini dapat dikombinasikan untuk menampilkan beberapa tombol. Beberapa konstanta yang dapat digunakan adalah:
    • vbOKOnly: Hanya menampilkan tombol OK. Konstanta ini adalah default.
    • vbOKCancel: Menampilkan tombol OK dan Cancel.
    • vbAbortRetryIgnore: Menampilkan tombol Abort, Retry, dan Ignore.
    • vbYesNoCancel: Menampilkan tombol Ya, Tidak, dan Batal.
    • vbYesNo: Menampilkan tombol Ya dan Tidak.
    • vbRetryCancel: Menampilkan tombol Retry dan Cancel.
  • title (opsional) adalah judul dari kotak dialog. Title dapat berupa string atau ekspresi yang menghasilkan string.
  • helpfile (opsional) adalah nama file Bantuan yang terkait dengan kotak dialog.
  • context (opsional) adalah nomor konteks dari topik bantuan yang terkait dengan kotak dialog.

Contoh dasar penggunaan MsgBox di VBA:

Sub Contoh_MsgBox()
    MsgBox "Hello World!"
End Sub

Pada contoh di atas, jendela pop-up akan muncul dengan pesan "Hello World!".


Message Box Constants

Constant Nilai Keterangan
vbOKOnly 0 Hanya menampilkan tombol OK.
vbOKCancel 1 Menampilkan tombol OK dan Cancel.
vbAbortRetryIgnore 2 Menampilkan tombol Abort, Retry dan Ignore.
vbYesNoCancel 3 Menampilkan tombol Yes, No, dan Cancel.
vbYesNo 4 Menampilkan tombol Yes and No.
vbRetryCancel 5 Menampilkan tombol Retry and Cancel.
vbCritical 16 Menampilkan ikon Pesan Critical.
vbQuestion 32 Menampilkan ikon Pesan Warning Query.
vbExclamation 48 Menampilkan ikon Pesan Warning.
vbInformation 64 Menampilkan ikon Pesan Information.
vbDefaultButton1 0 Tombol posisi pertama menjadi default.
vbDefaultButton2 256 Tombol posisi kedua menjadi default.
vbDefaultButton3 512 Tombol posisi ketiga menjadi default.
vbDefaultButton4 768 Tombol posisi keempat menjadi default.
vbApplicationModal 0 Modal aplikasi. Pengguna harus menanggapi kotak pesan sebelum melanjutkan pekerjaan di aplikasi saat ini.
vbSystemModal 4096 Modal sistem. Dalam hal ini semua aplikasi ditangguhkan sampai pengguna menanggapi kotak pesan.
vbMsgBoxHelpButton 16384 Menambahkan tombol Bantuan ke kotak pesan
VbMsgBoxSetForeground 65536 Menentukan jendela kotak pesan sebagai jendela latar depan.
vbMsgBoxRight 524288 Teks rata kanan.
vbMsgBoxRtlReading 1048576 Menentukan teks harus muncul sebagai bacaan kanan-ke-kiri pada sistem bahasa Ibrani dan Arab.


Message Box Mengembalikan Constants

Constant Nilai Keterangan
vbOK 1 OK
vbCancel 2 Cancel
vbAbort 3 Abort
vbRetry 4 Retry
vbIgnore 5 Ignore
vbYes 6 Yes
vbNo 7 No


MsgBox Yes No Syntax

Berikut Contoh sederhana pada MsgBox Yes No Prompt Type. Kita dapat menggunakan ini untuk menerima pengguna dalam kriteria tertentu. Dan memutuskan proses selanjutnya.

Sub Contoh_MsgBox_YesNo()
    If MsgBox("Apakah Anda ingin melihat Waktu saat ini", vbYesNo) = vbYes Then
        MsgBox Format(Now(), "HH:MM:SS AMPM"), vbInformation, "Waktu Saat Ini"
    End If
End Sub

MsgBox Yes No If

Contoh berikut pada Msgbox Yes No If untuk menampilkan kotak pesan yang berbeda berdasarkan opsi yang dipilih. If then syntax membantu memilih prosedur sub berdasarkan kondisi tertentu.

Sub Contoh_MsgBox_YesNo_If()
    vbOption = MsgBox("Tekan Tombol Ya atau Tidak", vbYesNo)
    If vbOption = 6 Then
        MsgBox "Anda memilih Yes Option"
    ElseIf vbOption = 7 Then
        MsgBox "Anda memilih No Option"
    End If
End Sub

MsgBox Yes No Cancel

Contoh di bawah pada Msgbox Yes No Cancel kembali untuk mengakses respon MsgBox. Ini akan membantu kita mengakses, menyimpan, dan memasukkan respons atau string msgbox dalam nilai variabel. Kita dapat menggunakan teks variabel dalam pemrograman lebih lanjut. Dalam MsgBox kita juga dapat menggunakan vbCr untuk membagi teks kotak pesan menjadi baris baru atau menjadi beberapa baris.

Sub Contoh_MsgBox_YesNoCancel()
    Dim msgValue
    msgValue = MsgBox("Halo, Apakah Anda operator sekolah? Pilih:" _
    & vbCr & "Yes: jika Anda operator sekolah" _
    & vbCr & "No: jika Anda Bukan operator sekolah" _
    & vbCr & "Cancel: jika Anda tidak akan melanjutkan" _
    , vbYesNoCancel + vbQuestion)
 
    If msgValue = vbYes Then
        MsgBox "Salam satu data"
    ElseIf msgValue = vbNo Then
        MsgBox "Anda harus mengenal operator sekolah"
    ElseIf msgValue = vbCancel Then
        MsgBox "Baiklah, kembali lagi di lain waktu"
    End If
End Sub

InputBox VBA

Kita dapat menggunakan fungsi InputBox di Excel VBA untuk meminta pengguna memasukkan nilai. Contoh kode sebagai berikut:

Sub Contoh_InputBox()
    Dim yakin As Variant
    Dim hasil As Integer
 
    hasil = 2 + 2
    yakin = InputBox("Masukkan jumlah dari 2 + 2")
 
    If yakin = hasil Then
        MsgBox "Betul"
    ElseIf yakin = "" Then
        MsgBox "Anda harus menjawab"
        Contoh_InputBox
    Else
        MsgBox "Salah, jawaban yang benar adalah " & hasil, vbCritical
    End If
End Sub

Kita menggunakan variabel pada "yakin" bertipe Variant di sini karena variabel Variant dapat menampung semua jenis nilai. Dengan cara ini pengguna dapat memasukkan teks, angka, dll. Karena contoh disini kita akan menebah penjumlahan maka "hasil" kita gunakan variabel Integer untuk menyimpan bilangan bulat sederhana.

Jika jawaban kita benar makan akan tampil kotak pesan "Betul". Jika jawaban kita kosong (tidak mengisi) maka akan tampil kotak pesan "Anda harus menjawab". Dan jika jawaban kita salah maka akan tampil kotak pesan "Salah, jawaban yang benar adalah 4"

Lebih baru Lebih lama

Formulir Kontak