huyyyy guuuuuysss..
gue kembali lagi .. haha
kali ini gue akan membuat tutorial untuk membandingkan data pada excel
dengan data pada database server (MYSQL)
pertama..
kalian harus punya codingan dasar yang pernah saya buat
yaitu MEMBUAT KONEKSI EXCEL KE DATABASE SERVER MENGGUNAKAN ADODB << klik untuk tutorialnya..
kedua..
pastikan dan HARUS.. HARUSS. HAAARUUUUSSSS..
kolom header nya harus sama dengan yang ada di DATABASE..
seperti ini..
oke.. setelah punya semua..
ikuti langkah2 berikut.. karna kita hanya mengedit coding yang sudah ada..
berikut gue lampirin coding an nya juga..
oke.. sekian dulu tutorial dari saya.. mudah bukan..
salam #ExcelSakti #HappyCoding
#AsalTulisAje
kali ini gue akan membuat tutorial untuk membandingkan data pada excel
dengan data pada database server (MYSQL)
pertama..
kalian harus punya codingan dasar yang pernah saya buat
yaitu MEMBUAT KONEKSI EXCEL KE DATABASE SERVER MENGGUNAKAN ADODB << klik untuk tutorialnya..
kedua..
pastikan dan HARUS.. HARUSS. HAAARUUUUSSSS..
kolom header nya harus sama dengan yang ada di DATABASE..
seperti ini..
ikuti langkah2 berikut.. karna kita hanya mengedit coding yang sudah ada..
berikut gue lampirin coding an nya juga..
Option Explicit
Sub writeLog(str As String)
tbLog.Text = tbLog.Text & vbNewLine & str
tbLog.SelStart = Len(tbLog.Text)
End Sub
Private Sub CommandButton1_Click()
' pertama kalian add reference ADODB nya..
' oiyaaa gan..
' pastikan driver mysql odbc kalian sudah di install ya
' untuk cek nya bisa kalian cek di windows >> odbc
' seperti berikut..
' jika kalian belun install link download nya saya cantumkan di deskripsi ya
' plus link download database mysql nya jika kalian belum punya..
' lanjut ke koding ya..
Dim conn As New ADODB.Connection
Dim record_set As New ADODB.Recordset
Dim column_name As ADODB.Field
Dim i As Integer
' --- mulai edit disini ---
Dim shData As Worksheet
Dim shCompare As Worksheet
Application.DisplayAlerts = False
Set shData = ThisWorkbook.Worksheets("data")
Set shCompare = ThisWorkbook.Worksheets.Add(, shData)
shCompare.Name = "compare"
Dim rngDatas As Range
Dim rngCompares As Range
Set rngDatas = shData.Range("A1")
Set rngCompares = shCompare.Range("A1")
rngCompares.CurrentRegion.ClearContents
' --- selesai edit ---
' nah ini connection string untuk MYSQL
conn.ConnectionString = "driver={mysql odbc 3.51 driver};server=127.0.0.1;database=asaltulisajedb;uid=root;password=;"
' jika kalian memakai MICROSOFT SQL SERVER ubah connection string nya menjadi
' conn.ConnectionString = "driver={sql server native client 11.0};server=127.0.0.1;database=asaltulisajedb;uid=root;pwd=;"
' oke..
conn.ConnectionTimeout = 40
conn.Open
' kita masukan query untuk select semua data pada table 'tbl_kota_ind'
' 'tbl_kota_ind' bisa kalian ganti dengan nama table kalian ya guuuyysss...
record_set.Open "select * from tbl_kota_ind", conn
For Each column_name In record_set.Fields
rngCompares.Offset(0, i).Value = column_name.Name 'edit disini
i = i + 1
Next
rngCompares.Offset(1, 0).CopyFromRecordset record_set 'edit disini
record_set.Close
Set record_set = Nothing
conn.Close
Set conn = Nothing
' --- mulai edit disini ---
Set rngDatas = rngDatas.CurrentRegion
Set rngCompares = rngCompares.CurrentRegion
rngDatas.Sort rngDatas(1, 1), xlAscending
rngCompares.Sort rngCompares(1, 1), xlAscending
'mulai compare
If rngDatas.Columns.Count <> rngCompares.Columns.Count Then
writeLog "jumlah kolom tidak sama."
GoTo exitLabel
End If
If rngDatas.Rows.Count <> rngCompares.Rows.Count Then
writeLog "jumlah row tidak sama."
GoTo exitLabel
End If
Dim x As Integer
Dim y As Integer
For y = 1 To rngDatas.Rows.Count
For x = 1 To rngDatas.Columns.Count
DoEvents
If rngDatas(y, x).Value = rngCompares(y, x).Value Then
writeLog rngDatas(y, x).Address & " oke."
Else
writeLog rngDatas(y, x).Address & " tidak sama."
End If
Next x
Next y
exitLabel:
writeLog "selesai."
shCompare.Delete ' jika kalian tidak ingin menghapus sheet data yang dari database
' kalian isa command coding ini
Application.DisplayAlerts = True
Set rngCompares = Nothing
Set rngDatas = Nothing
Set shCompare = Nothing
Set shData = Nothing
' --- selesai edit ---
' okeee.. kita test..
End Sub
oke.. sekian dulu tutorial dari saya.. mudah bukan..
#AsalTulisAje
Comments
Post a Comment