Cara Menggunakan MsgBox & InputBox di VBA untuk Interaksi yang Lebih Baik

Dim response As Integer
response = MsgBox(“Are you sure you want to continue?”, vbYesNo + vbQuestion, “Confirm”)

If response = vbYes Then
    MsgBox “You chose Yes!”, vbInformation, “Result”
Else
    MsgBox “You chose No!”, vbExclamation, “Result”
End If

Mengenal Input Box di VBA

Input Box (InputBox) adalah fitur dalam VBA (Visual Basic for Applications) yang memungkinkan pengguna memasukkan data dalam bentuk teks atau angka melalui jendela dialog sederhana. InputBox sering digunakan untuk meminta informasi dari pengguna, seperti nama, angka, tanggal, atau data lainnya yang diperlukan dalam pemrosesan VBA.

Sintaks Dasar InputBox

Sintaks dasar untuk menampilkan InputBox dalam VBA adalah sebagai berikut:

Dim userName As String
userName = InputBox(“Enter your name:”, “Input Data”)
MsgBox “Hello, “ & userName & “!”

Penjelasan kode:

  1. InputBox akan menampilkan dialog dengan teks “Enter your name:”.
  2. Data yang diketikkan pengguna akan disimpan dalam variabel userName.
  3. MsgBox akan menampilkan sapaan “Hello, [nama yang diinput]!” setelah pengguna menekan OK.

Menentukan Nilai Default di InputBox

Anda dapat menetapkan nilai default dalam InputBox untuk memberikan contoh input yang diharapkan.

Contoh kode dengan nilai default:

Dim city As String
city = InputBox(“Enter your city name:”, “Input Data”, “Jakarta”)
MsgBox “You live in “ & city & “!”

Penjelasan:

  • “Jakarta” akan muncul sebagai teks default dalam InputBox.
  • Pengguna dapat mengedit atau langsung menekan OK untuk menggunakan nilai default.

Validasi Input dari InputBox untuk Memastikan Data yang Diinput Benar

Karena InputBox hanya menerima input dalam bentuk teks, penting untuk melakukan validasi agar data yang dimasukkan sesuai dengan yang diharapkan.

Contoh validasi input agar tidak kosong:

Dim userInput As String
userInput = InputBox(“Enter your email:”, “Input Email”)

If userInput = ““ Then
            MsgBox “Input cannot be empty!”, vbExclamation, “Warning”
Else
            MsgBox “The email you entered: “ & userInput, vbInformation, “Confirmation”
End If

Penjelasan:

  • Jika pengguna menekan OK tanpa mengisi data, maka akan muncul peringatan.
  • Jika ada input yang valid, akan muncul konfirmasi dengan data yang dimasukkan.

Contoh validasi input hanya menerima angka:

Dim age As String
age = InputBox(“Enter your age:”, “Input Age”)

If IsNumeric(age) Then
            MsgBox “Your age is “ & age & “ years.”, vbInformation, “Confirm”
Else
            MsgBox “Please enter a valid number!”, vbCritical, “Error”
End If

Penjelasan:

Artikel Terbaru