Cara Menemukan dan Menghapus Data Ganda Dengan Vba Excel

Data ganda dalam sebuah data bisa disebabkan salah input data, hasil copy paste data baru ke data lama dan bisa jadi karena data yang digunakan oleh beberapa orang sehingga discommunication. Munculnya data ganda dalam sebuah data mengakibatkan hasil laporan yang diharapkan menjadi tidak akurat. Jumlah data yang bertambah dan tidak sesuai dengan fakta dilapangan. Kesimpulan penyebab utama data ganda karena Human Error atau kegagalan manusia dalam melakukan tugas. kurang teliti dan kurang jeli dalam memasukkan data beresiko terhadap kesalahan hasil akhir.

Jika dalam perusahaan terdapat kasus data karyawan ganda, sudah bisa dipastikan pengeluaran tiap bulannya untuk gaji karyawan juga bertambah. Disekolah jika nama siswa banyak yang ganda tentu pembayaran dana BOS bakal meningkat tetapi tunggu resiko saat di audit. 


Ada beberapa cara untuk menemukan dan menghapus data ganda di Excel. Tinggal memilih salah satu cara yang cocok digunakan. Dari cara yang termudah hingga cara tersulit. Dari cara manual hingga cara membangun aplikasi yang bekerja otomatis.

Cara Menemukan Data Ganda

1. Menggunakan Conditional Formatting
Untuk menemukan data ganda yang terdapat dalam data kita dapat menggunakan Conditional Formating. Conditional Formating merupakan salah satu filtur yang terdapat pada excel dan dapat digunakan untuk menandai data ganda dengan capat. Caranya Blok dulu data yang akan ditandai selanjutn klik Tab Home pilih menu Conditional Formatting dan klik Highlight Cells Rules dan pilih Duplicate Values. Selanjutnya akan muncul kotak dialog Duplicate Values anda dapat mengatur sendiri warna untuk menampilkan data yang sama.


2. Menggunakan Formula
Untuk menemukan data yang sama kita dapat mengunakan formula seperti yang terlihat pada gambar dibawah. Menggunakan formula hanya mendeteksi data ganda yang ada pada satu kolom saja. Dalam contoh gambar dibawah yang sort data ganda dengan formula hanya pada tiap cell yang terdapat pada kolom B saja.


Kelemahan menggunakan formula, cell yang memiliki data ganda tidak diwarnai tetapi hanya memberikan keterangan saja sesuai dengan keterangan yang kita masukkan dalam formula.

3. Menggunakan Kode Vba Excel
Menemukan data ganda dengan menggunakan perintah kode Vba. Ini yang Admin suka.!! Belajar tentang kode Vba sama juga dengan belajar jadi programer. Bahasa Vba hampir persis sama dengan bahasa Vb.60 walau terdapat perbedan-perbedaan. Hanya bermodal Excel yang sudah familiar, kita dapat membangun aplikasi dengan tombol-tombol perintah yang dapat bekerja secara otomatis.

Perhatikan gambar format gif yang berada setelah paragraf kedua posting ini. Pada gambar format gif tersebut terlihat sebuah aplikasi yang terdapat dua buah tombol, salah satu tombol dengan caption Find Duplicate untuk menemukan data ganda.
Setelah data di blok selanjutnya tombol dengan dengan caption Find Duplicate diklik maka akan menampilkan pesan berupa keterangan jumlah data ganda yang ditemukan dan akan diberikan warna pada cell. Bagaimana caranya.? berikut langkah-langkahnya.

Langkah-Langkah Membuat Tombol Dengan Kode Vba Untuk Menemukan Data Ganda
  • Buka Excel, buat data seperti yang terlihat pada gambar format gif  diatas. 
  • Masukkan CommandButton1 dengan cara klik tab Developer selanjut klik Insert dan pilih CommandButton yang terdapat pada ActiveX Controls, seret di halaman Sheet sesuaikan ukuran menurut selera anda. Atur caption dengan cara klik kanan pada CommandButton pilh properties ubah Caption menjadi Find Duplicate.
  • Kode berikut ini berfungsi untuk mencari data ganda yang diarea yang diblok. Klik kanan CommandButton1 dengan caption Find Duplicate pilih View Code, pada jendela kode masukkan kode berikut ini.
Private Sub CommandButton1_Click()

Dim DataDipilih As Range
Dim DataDitemukan As Range
Dim cell As Range
Dim TGanda As String
Dim TemuData As String
Dim Merdeka As String

'Variables
  Set DataDipilih = Selection
  Merdeka = "-;;-"

'Loop Cell yang dipilih
For Each cell In DataDipilih.Cells
    If cell.Value <> "" Then
        If InStr(1, TemuData, cell.Value & Merdeka) = 0 Then
          TemuData = TemuData & cell.Value & Merdeka
       
          Set DataDitemukan = DataDipilih.Find(what:=cell.Value, LookIn:=xlValues, _
            lookat:=xlWhole, searchdirection:=xlNext)
     
          If Not DataDitemukan Is Nothing Then
              FirstAddress = DataDitemukan.Address
              Do
                Set DataDitemukan = DataDipilih.FindNext(DataDitemukan)
                If DataDitemukan.Address = FirstAddress Then Exit Do
                TGanda = TGanda & DataDitemukan.Address & ","
              Loop
           
          End If
        End If
    End If
Next cell

If TGanda <> "" Then
    Set DataDipilih = Range(Left(TGanda, Len(TGanda) - 1))
    UserAnswer = MsgBox(DataDipilih.Count & " Data Ganda Ditemukan..!!," _
      & " Data Kembar Akan Diberi Warna Kuning.?", vbYesNo)
    If UserAnswer = vbYes Then DataDipilih.Interior.Color = vbYellow
  Else
    MsgBox "Tidak Menemukan Data Ganda..!!", vbInformation, "Find & Replace"
  End If

End Sub


Demikian tiga cara menemukan data ganda dalam suatu data yang dapat Admin paparkan di blog ini. Semoga menjadi referensi bagi anda yang sedang mempunya masalah dengan data ganda. Selanjutnya kita akan membahas Cara Menghapus Data Ganda.

Cara Menghapus Data Ganda
Setelah data ditemukan ganda langkah berikutnya adalah menghapus data ganda agar data yang dimiliki menjadi akurat. Data ganda yang banyak dan terletak diantara baris data lain tentu akan membutuhkan waktu untuk menghapus. Ikuti cara-cara mudah dan cepat dalam menghapus data ganda yang ditemukan dalam data.
Cara menghapus data ganda dapat dilakukan dengan beberapa cara. Berikut Admin paparkan cara menghapus data ganda menggunakan filtur Remove Duplicate dan menggunakan kode Vba. Bagi yang ingin cara mudah dan cepat cukup mengikuti cara menghapus menggunakan Filtur Remove Duplicate. Bagi yang ingin membangun aplikasi menggunakan Excel ikuti terus hingga cara menghapus data menggunakan kode Vba Exce.

1. Menghapus Data Ganda Dengan Menggunakan Tools Remove Duplicates
Filtur Excel sudah dilengkapi untuk menanggani data yang double atau ganda, sering disebutnya juga data duplicate. Menghapus data menggunakan filtur Tool Remove Duplcate sangatlah mudah. Blok terlebih dahulu data yang mengandung data ganda selanjutnya klik pada tab Data. Pada tab Data terdapat group menu Data Tools dan klik Remove Duplicates

Setelah Remove Duplicates diklik maka akan muncul kotak dialog Remove Duplicates yang dapat diatur pilihan kolom yang akan dihapus. Setelah memilih kolom mana saja yang akan dihapus selanjutnya klik Ok.


Demikian cara menghapus data ganda dengan menggunakan filtur Remove Duplicate yang terdapat pada tab Data. Cara tersebut adalah cara termudah untuk menghapus data ganda yang terdapat dalam data. Berikutnya Admin akan memaparkan cara menghapus data ganda menggunakan Kode Vba. Bagi yang tidak ingin rumit mungkin  cukup disini saja cara menghapus data. Bagi yang ingin membuat aplikasi menggunakan Excel silahkan dilanjutkan.
2. Cara Menghapus Data Menggunakan Kode Vba.
Menggunakan tombol dan memberikan perintah menggunakan kode Vba terkesan lebih profesional. Walau rumit dan sulit menerjemahkan kode Vba kedalam bahasa yang lebih logika agar dapat dipahami. ikuti saja langkah menggunakan kode vba  untuk menghapus data ganda.

Langkah-Langkah Membuat Tombol Dengan Kode Vba Untuk Menghapus Data Ganda
  • Buka Excel, buat data seperti yang terlihat pada gambar format gif  diatas. 
  • Jika sebelumnya sudah merancang untuk tombol Find Duplicate selanjutnya Masukkan CommandButton2 dengan cara klik tab Developer dan klik Insert, pilih CommandButton yang terdapat pada ActiveX Controls, seret di halaman Sheet sesuaikan ukuran menurut selera anda. Atur caption dengan cara klik kanan pada CommandButton2 pilih properties ubah Caption menjadi Del Duplicate.
  • Kode berikut ini berfungsi untuk menghapus data ganda yang di area yang diblok. Klik kanan CommandButton2 dengan caption Del Duplicate pilih View Code, pada jendela kode masukkan kode berikut ini.
Private Sub CommandButton2_Click()

Dim DataDipilih As Range
Dim DataDitemukan As Range
Dim cell As Range
Dim TGanda As String
Dim TemuData As String
Dim Merdeka As String

  Set DataDipilih = Selection
  Merdeka = "-;;-"

For Each cell In DataDipilih.Columns(1).Cells

    If cell.Value <> "" Then

        If InStr(1, TemuData, cell.Value & Merdeka) = 0 Then
          TemuData = TemuData & cell.Value & Merdeka
       
          Set DataDitemukan = DataDipilih.Find(what:=cell.Value, LookIn:=xlValues, _
            lookat:=xlWhole, searchdirection:=xlNext)
     
          If Not DataDitemukan Is Nothing Then

              FirstAddress = DataDitemukan.Address

              Do
                Set DataDitemukan = DataDipilih.FindNext(DataDitemukan)
                If DataDitemukan.Address = FirstAddress Then Exit Do
                Set DataDitemukan = DataDitemukan.Resize(1, DataDipilih.Columns.Count)
                TGanda = TGanda & DataDitemukan.Address & ","
              Loop
           
          End If
        End If
    End If
Next cell

  If TGanda <> "" Then
    Set DataDipilih = Range(Left(TGanda, Len(TGanda) - 1))
    DataDipilih.Select

    UserAnswer = MsgBox(DataDipilih.Count & " Data Kembar Ditemukan," _
      & " Data Kembar Akan Dihapus?", vbYesNo)
    If UserAnswer = vbYes Then Selection.Delete Shift:=xlUp
  Else
    MsgBox "Tidak Ditemukan Data Kembar", vbInformation, "Find & Del Duplicate"
  End If

End Sub

Uji tombol yang sudah diterapkan kode diatas. Bila penempatan kode sudah benar dan tepat maka tombol yang anda buat akan berjalan sama persis dengan gambar format gif diatas.
Demikian posting Cara Menemukan dan Menghapus Data Ganda Dengan Vba Excel. Semoga menjadi referensi bagi yang sedang mencari informasi Cara Menemukan dan Menghapus Data Ganda Dengan Vba Excel. Saran dan kritik serta pertanyaan dapat disampaikan pada kolom komentar yang tersedia. Bila posting ini dirasakan bermanfaat mohon dapat dishare ke media sosial agar yang lain juga tahu.

2 komentar untuk "Cara Menemukan dan Menghapus Data Ganda Dengan Vba Excel"

Komentar Anda Sangat Menentukan Kelangsungan Blog ini