Mencegah data ganda - Ada kalanya saat membuat entri data kita menginginkan satu kolom terisi data yang berbeda antara baris satu dengan baris yang lainnya, sehingga data tersebut bisa mewakili setiap baris pada tabel data, contoh kasus saat membuat entri Nomor Induk Siswa atau biasa disingkat dengan NIS, lazimnya NIS siswa harus berbeda antara satu siswa dengan siswa lainya, jika ternyata ada NIS kembar maka ini merupakan kesalahan yang fatal. Bagaimanakah cara menghindari agar NIS siswa tidak terentri secara ganda ? berikut penjelasanya

Mencegah data ganda pada Microsoft Excel

Secara garis besar ada dua cara agar kita terhindar dari data ganda, yang pertama yaitu dengan fitur yang telah disediakan oleh Microsoft Excel, dan cara yang kedua adalah dengan menggunakan kode macro (VBA).

Mencegah data ganda pada Microsoft Excel dengan Conditional Formatting

Sebenarnya cara ini tidak secara langsung mencegah input data kembar / ganda, tapi cara ini hanya memberi tanda atau peringatan bahwa telah ada data yang sama yang diinput sebelumnya sesuai keinginan pengguna.

Misal kita punya tabel data sebagaimana tabel dibawah ini :


Pada kolom Kode barang kita ingin agar tidak ada data kembar / ganda, maka caranya
Blok A2:A9
Pilih menu Home > Conditional Formatting > New Rule > Format only unique or duplicate values
Klik tombol Format, Pada tab Fill , pilih warna Merah atau warna yang anda sukai. Pilih OK


Dengan cara ini pengguna bisa mengetahui ada kode kembar atau tidak pada kolom Kode barang, jika terdapat ada kode barang yang ganda / kembar maka akan ada peringatan berupa warna sel menjadi merah


Mencegah data ganda pada Microsoft Excel dengan Data Validation

Cara yang kedua Mencegah data ganda pada Microsoft Excel dengan Data Validation, masih cmenggunakan cara yang telah disediakan Microsoft Excel. Untuk cara yang kedua menggunakan fasilitas Data Validation. Prinsip kerjanya berbeda dengan cara pertama yang disebutkan diatas. Cara kerja Data Validation yakni apabila ada data kembar maka akan ada kotak dialog sebagai peringatan, kotak dialog ini bisa disetting sesuai keinginan pengguna, carannya adalah sebagai berikut :

Blok A2:A9
Pilih menu Data > Data Validation > Data Validation
Pada kotak dialog, di tab Setting, bagian Allow, pilih Custom.
Di bagian Formula, ketikkan rumus : =COUNTIF($A$2:$A$9,A2)=1
Pada tab Error Alert, bagian Error Message tuliskan atau isikan kalimat sesuai keinginan anda, misal "Maaf anda telah mengentri data ini sebelumnya"


Mencegah data ganda pada Microsoft Excel dengan Kode macro

Saat pertama kali anda mengetikan keyword Mencegah data ganda pada Microsoft Excel mungkin yang anda maksud adalah Mencegah data ganda pada Microsoft Excel dengan kode macro, jika kedua cara diatas menggunakan fungsi atau fitur bawaan microsoft excel maka berikut ini adalah cara mencegah data ganda dengan kode macro, bagaimana caranya ??

Buka jendela VBA dengan menekan tombol Alt + F11
Gunakan kode macro dibawah ini untuk mencegah terjadi double input
Sub MenolakInputKembar()
Set x = Sheets("SHeet1").Range("A2:A9").Find(Textbox1.Value, LookIn:=xlValues)
If x Is Nothing Then
'jika entri yang akan anda input belum ada, letakan kode entri disini
Else
MsgBox "Maaf entri yang anda masukan telah ada"
Exit Sub
End If
End Sub
Biar jelas silahkan anda baca artikel Cara membuat entri data

Sheets("SHeet1").Range("A2:A9") : Merupakan tempat kolom yang tidak diizinkan inputan ganda, anda juga bisa menggantinya dengan kode ini Sheets("SHeet1").Range("A:A")

Download - Mencegah data ganda pada Microsoft Excel

Mencegah data ganda pada Microsoft Excel dengan Kode macro

Kali ini Mencegah data ganda pada Microsoft Excel dengan memanfaatkan kontrol Scrollbar, silahkan lihat terlebih dahulu artikel tentang Scrollbar disini Cara menggunakan ScrollBar
Download terlebih dahulu file sampel Mencegah data ganda diatas
Buka filenya,Buka jendela VBA dengan menekan tombol Alt + F11
Anda akan menemukan userform dengan beberapa kontrol, nah tugas anda tambahkan kontrol ScrollBar
Ganti semua kode macro yang ada pada userform dengan kode macro dibawah ini

Private Sub UserForm_Activate()
Set Ws = Sheets("Sheet1")
i = Ws.Cells(Ws.Rows.Count, "A").End(xlUp).Offset(0, 0).Row - 2
ScrollBar1.Min = 1
ScrollBar1.Max = i
ScrollBar1.Value = ScrollBar1.Max
End Sub

Tambahkan juga kode macro ini
Private Sub CommandButton1_Click()
Set Ws = Sheets("SHeet1")
i = Ws.Cells(Ws.Rows.Count, "A").End(xlUp).Offset(0, 0).Row
For Cek = 1 To ScrollBar1.Max
If TextBox1.Value = Ws.Cells(Cek + 2, 1).Value Then
MsgBox "Kode barang yang Anda masukkan sudah ada", _
vbCritical + vbOKOnly, "Kode barang Ganda"
Exit Sub
End If
Next Cek

Ws.Cells(i + 1, 1).Value = TextBox1.Value
Ws.Cells(i + 1, 2).Value = TextBox2.Value
Ws.Cells(i + 1, 3).Value = TextBox3.Value
End Sub


Saya yakin anda tidak akan terlalu paham dengan tutorial diatas, makanya saya sudah siapkan file sampel untuk pembelajaran yang lebih lanjut
Download - Mencegah data ganda pada Microsoft Excel

Demikianlah kiranya Menolak data ganda pada excel, semoga bermanfaat bagi kita semua. Ingat share artikel ini ya atau komentarlah jika ada yang ingin ditanyakan, kalau ndak ada yang ingin ditanyakan ya bookmark saja www.asis10.com ini yang merupakan tempat belajar microsoft excel VBA terbaik. Follow IG admin linknya ada dibawah sono...... Terimakasih selamat siang
No comments