Mencegah Kesalahan Input dengan Validasi Data di VBA Excel

Salah satu penyebab utama kesalahan dalam sebuah workbook bukan berasal dari rumus yang salah, melainkan dari data yang dimasukkan oleh pengguna. Kesalahan seperti memasukkan teks pada kolom angka, tanggal yang tidak valid, atau nilai di luar batas yang ditentukan dapat menyebabkan laporan menjadi tidak akurat.

Excel sebenarnya telah menyediakan fitur Data Validation untuk membatasi jenis data yang dapat diinput. Melalui VBA, Anda dapat membuat, mengubah, atau menghapus aturan validasi secara otomatis sehingga setiap worksheet memiliki standar input yang konsisten.


Mengenal Objek Validation

Dalam VBA, setiap sel memiliki objek Validation yang digunakan untuk mengatur aturan input.

Melalui objek ini, Anda dapat menentukan:

  • jenis data yang diperbolehkan;

  • rentang nilai yang valid;

  • daftar pilihan (drop-down list);

  • pesan petunjuk saat sel dipilih;

  • pesan kesalahan jika input tidak sesuai.

Objek Validation sangat berguna ketika Anda membuat formulir atau aplikasi berbasis Excel.


Menambahkan Validasi Angka

Contoh berikut hanya memperbolehkan pengguna memasukkan angka antara 1 hingga 100.

Range("B2").Validation.Add _
    Type:=xlValidateWholeNumber, _
    AlertStyle:=xlValidAlertStop, _
    Operator:=xlBetween, _
    Formula1:="1", _
    Formula2:="100"

Jika pengguna memasukkan angka di luar rentang tersebut, Excel akan menampilkan pesan kesalahan.


Membatasi Input Tanggal

Anda juga dapat membatasi agar pengguna hanya memasukkan tanggal dalam periode tertentu.

Range("C2").Validation.Add _
    Type:=xlValidateDate, _
    Operator:=xlBetween, _
    Formula1:="01/01/2026", _
    Formula2:="31/12/2026"

Validasi ini cocok digunakan pada formulir transaksi atau absensi.


Membuat Drop-Down List

Salah satu bentuk validasi yang paling sering digunakan adalah daftar pilihan (drop-down list).

Range("D2").Validation.Add _
    Type:=xlValidateList, _
    Formula1:="Aktif,Tidak Aktif"

Saat pengguna memilih sel D2, Excel akan menampilkan daftar pilihan yang telah ditentukan.


Menggunakan Data dari Range Sebagai Sumber List

Untuk daftar yang lebih panjang, gunakan range sebagai sumber data.

Misalnya, daftar status berada pada sel H2:H5.

Range("D2").Validation.Add _
    Type:=xlValidateList, _
    Formula1:="=$H$2:$H$5"

Cara ini lebih fleksibel karena daftar dapat diperbarui tanpa mengubah kode VBA.


Menampilkan Pesan Petunjuk

Anda dapat memberikan petunjuk kepada pengguna sebelum mereka mengisi data.

With Range("B2").Validation
    .InputTitle = "Jumlah"
    .InputMessage = "Masukkan angka antara 1 sampai 100."
End With

Pesan akan muncul ketika sel dipilih.


Menampilkan Pesan Kesalahan

Selain petunjuk, Anda juga dapat membuat pesan khusus ketika input tidak valid.

With Range("B2").Validation
    .ErrorTitle = "Input Tidak Valid"
    .ErrorMessage = "Nilai harus berupa angka antara 1 dan 100."
End With

Pesan ini membantu pengguna memahami alasan mengapa data ditolak.


Menghapus Validasi

Jika aturan validasi tidak lagi diperlukan, gunakan metode Delete.

Range("B2").Validation.Delete

Sel akan kembali menerima semua jenis input.


Studi Kasus

Misalkan Anda membuat formulir data karyawan.

KolomAturan
Nama Bebas
Umur 18–60 tahun
Status Aktif atau Tidak Aktif
Tanggal Masuk Tahun 2026

Dengan VBA, seluruh aturan tersebut dapat diterapkan secara otomatis saat workbook dibuka sehingga pengguna tidak perlu mengaturnya secara manual.


Kesalahan yang Sering Dilakukan

Menambahkan Validasi Tanpa Menghapus Aturan Lama

Jika sebuah sel sudah memiliki validasi, menambahkan aturan baru dapat menyebabkan error.

Sebelum membuat validasi baru, hapus aturan lama terlebih dahulu.

Range("B2").Validation.Delete

Menuliskan Sumber List yang Salah

Pastikan alamat range pada Formula1 benar dan menggunakan referensi absolut jika diperlukan.


Tidak Memberikan Pesan Kesalahan

Tanpa ErrorMessage, pengguna mungkin tidak memahami mengapa data yang dimasukkan ditolak.

Tambahkan pesan yang jelas agar proses input menjadi lebih mudah dipahami.


Tips Praktis

💡 Gunakan Data Validation pada seluruh formulir input, bukan hanya pada beberapa sel.

💡 Simpan daftar pilihan pada worksheet khusus agar mudah diperbarui.

💡 Gunakan Validation.Delete sebelum membuat aturan baru.

💡 Berikan InputMessage untuk membantu pengguna mengisi data dengan benar.

💡 Kombinasikan validasi dengan VBA agar aturan dapat diterapkan secara otomatis pada workbook baru.


Ringkasan

Metode / PropertiFungsi
Validation.Add Menambahkan aturan validasi
Validation.Delete Menghapus validasi
xlValidateWholeNumber Validasi angka
xlValidateDate Validasi tanggal
xlValidateList Membuat drop-down list
InputMessage Menampilkan petunjuk
ErrorMessage Menampilkan pesan kesalahan

Kesimpulan

Data yang berkualitas merupakan fondasi dari setiap aplikasi Excel. Dengan memanfaatkan objek Validation, Anda dapat memastikan bahwa pengguna hanya memasukkan data yang sesuai dengan aturan yang telah ditentukan. Selain mengurangi kesalahan input, validasi data juga membuat workbook lebih profesional, mudah digunakan, dan menghasilkan informasi yang lebih akurat.


Praktik!

Latihan 1

Buat validasi pada sel B2 agar hanya menerima angka antara 10 hingga 500.


Latihan 2

Buat drop-down list pada sel C2 yang berisi pilihan Lunas, Belum Lunas, dan Dibatalkan.


Latihan 3

Tambahkan Input Message dan Error Message pada salah satu sel, kemudian uji dengan memasukkan data yang tidak sesuai untuk melihat bagaimana validasi bekerja.

Hubungi Kami

Kantor Berkreasi
Alamat :
Pens Sky Venture - Sukolilo Surabaya
Karangrejo Tmur 17 Surabaya

Email : kantor.berkreasi@gmail.com
WA : wa.me/6287761589881  
(Support  Mbak Ana)

Tim Pengembang

Dr. Rojabi Azharghany, M.Si, S.Sos
Dr. H. Agus Sulthoni Imami, S.Psi. M.Pd.I.
Ali Ishaq, M.Pd.
Didik Rahwiniyanto, S.Si., M.Pd.
Mujiburrohman, M.Pd.
Mohammad Zikky, S.ST, M.T
Amien sawedi, S.Pd.
Didik P Wicaksono, M.Pd.