Sistem Absensi Dan Laporan Penggajian

Showing posts with label Pemograman VBA Pencarian Multi Kriteria Data Pada Ms.Excell 2010. Show all posts
Showing posts with label Pemograman VBA Pencarian Multi Kriteria Data Pada Ms.Excell 2010. Show all posts

Sunday, 3 May 2015

Cara Membuat Pencarian Multi Kriteria Data Pada Ms.Excell 2010

Microsoft Excell 2010 ternyata memberikan kemudahan untuk kita dalam melakukan pengolahan data. Tutorial kali ini saya akan membahas tentang bagaimana melakukan pencarian data berdasarkan beberapa atau banyak kriteria dengan menggunakan Macro pada Excell. Melakukan pencarian data berdasarkan tanggal Yaitu tanggal Awal dan tanggal Akhir, Product Code dan Nama Costumer Pada Tabel data Pengiriman.

Ok langsung saja kita buat..!

1. Buatlah atau Rancanglah Tabel Data Pengiriman pada Sheet1,  ganti nama/Rename "Sheet1" menjadi "Data", Seperti tabel dibawah ini :


2. Rancanglah tempat pencarian Data dan Tempat data yang dicari Akan ditampilkan pada Sheet2, ganti nama/Rename "Sheet2" menjadi "Multi Cari", Seperti tabel dibawah ini :


3. Tambahkan 2 buah CommandButton, klik kanan CommandButton1 pilih Edit Text ganti menjadi "Cari", lakukan langkah yang sama pada CommandButton2 ganti menajdi "Reset".
4. Kita akan membuat Macronya, Pada menu Toolbars Excell pilih Tab Developer, lalu klik icon Visual Basic


5. Masuk coding berikut atau Copas pada layer Macro ;

Sub ShowAllData()
If Worksheets("Data").FilterMode Then
Worksheets("Data").ShowAllData
End If
Worksheets("Multi Cari").Range("A7:H65536").ClearContents
Worksheets("Data").Range("TabelData").SpecialCells(xlCellTypeVisible).Copy _
Destination:=Worksheets("Multi Cari").Range("A7")
End Sub

Sub cari()
Dim DateBegin
Dim DateEnd
Dim code
Dim customer
Dim Rng As Range
On Error GoTo errHandler:
Set code = Worksheets("Multi Cari").Range("C4")
Set customer = Worksheets("Multi Cari").Range("D4")
Set Rng = Worksheets("Data").Range("E2")
Application.ScreenUpdating = False
With Worksheets("Data")
       If Worksheets("Data").AutoFilterMode Then
       
         Worksheets("Data").Range("E3").AutoFilter
        End If
    End With
DateBegin = Format(Worksheets("Multi Cari").Range("A4").Value, "mm/dd/yy")
DateEnd = Format(Worksheets("Multi Cari").Range("B4").Value, "mm/dd/yy")
If Worksheets("Multi Cari").Range("A4").Value >= Worksheets("Multi Cari").Range("B4").Value Then
MsgBox " Your start value is wrong"
Exit Sub
Else
If IsEmpty(DateBegin) And IsEmpty(DateEnd) Then
MsgBox "Masukkan Terlebih Dahulu Tanggal Mulai dan Akhir transaksi "
Exit Sub
End If
If code = "" Then code = "*"
If customer = "" Then customer = "*"

Rng.AutoFilter Field:=1, Criteria1:=">=" & DateBegin, _
Operator:=xlAnd, Criteria2:="<=" & DateEnd
Rng.AutoFilter Field:=3, Criteria1:=code & "*"
Rng.AutoFilter Field:=8, Criteria1:=customer & "*"

Worksheets("Multi Cari").Range("A7:H65536").ClearContents
Worksheets("Data").Range("TabelData").SpecialCells(xlCellTypeVisible).Copy _
Destination:=Worksheets("Multi Cari").Range("A7")
With Worksheets("Data")
       If Worksheets("Data").AutoFilterMode Then
       
         Worksheets("Data").Range("E3").AutoFilter
        End If
    End With
End If

On Error GoTo 0
Exit Sub
errHandler:
MsgBox "There is no data"
With Worksheets("Data")
       If Worksheets("Data").AutoFilterMode Then
       
         Worksheets("Data").Range("E3").AutoFilter
        End If
    End With
Worksheets("Multi Cari").Select
End Sub

6. Tutup Macro, kembali ke Sheet Data untuk membuat Name Manager, pada Toolsbar Menu pilih tab Formulas lalu klik icon Name Manager.


7. Klik New, buatlah Namenya TabelData, pada Kotak Refers to :,masuk Formula excell berikut ini ;

=OFFSET(Data!$A$3,1,,COUNTA(Data!$A$3:$H$65536),8)


8. kembali ke Sheet Multi Cari, lalu klik kanan CommandButton1 pilih Assign Macro, lalu pilih macro Sub Cari, pada CommandButton2 pilih macro Sub ShowAllData.


9. Mari kita jalankan pencarian Datanya, pada Range A4 masukkan tanggal awal, pada Range B4 masuk tanggal Akhir, Range C4 msukkan Product Code dan pada Range D4 masukkan Nama Costumer yang akan anda cari lalu tekan CommandButton1 maka data akan ditampilkan mulai dari Range A7,

Tekan CommandButton2 untuk menampilkan semua Data dari Sheet Data ke Sheet Multi Cari.



Demikian Tutorial pencarian data dengan Multi kriteria pada Ms.Excell 2010 menggunakan Macro VBA, semoga bermanfaat dan silahkan Anda kembangkan kembali.

Berikut ini contoh Applikasinya :



Salam,