Home Macro Programming Module Koneksi MySQL pada Macro VBA

Module Koneksi MySQL pada Macro VBA

868

Module ini digunakan untuk melakukan koneksi ke database MySQL. Modul ini juga dapat digunakan untuk mengolah data pada database.

Cara Menambahkan Module

Sebelum menggunakan module ini pastikan PC anda telah terinstal MySQL Connector/ODBC 5.3. atau versi di atasnya. Selanjutnya masuk ke mode Visual Basic, aktifkan referensi Ado melalui menu Tools -> Referencse. Lalu pilih Microsoft ActiveX Data Objects 2.7 Library.

Buatlah module melalui menu Insert->Module, lalu copy paste script di bawah ini.

Public Db As ADODB.Connection

Function Con() As Boolean
On Error GoTo Eror
Set Db = New Connection
Db.CursorLocation = adUseClient

Db.Open "Driver={MYSQL ODBC 5.3 UNICODE Driver};SERVER=localhost;Database=akademik;" & _
"User=root;Password=;option=3;"
Con = True
Exit Function

Eror:
Con = False
End Function

Public Function BT(vSQL As String, Optional Tipe As Integer = 0) As Recordset
On Error Resume Next
If Db.State <> 1 Then
On Error GoTo 0
If Con = False Then
    MsgBox "Koneksi Gagal", vbCritical, "Info"
    Exit Function
End If
End If
Set BT = New Recordset
If Tipe = 0 Then 'read only
    BT.Open vSQL, Db, adOpenDynamic, adLockBatchOptimistic
ElseIf Tipe = 1 Then
    BT.Open vSQL, Db, adOpenDynamic, adLockOptimistic
End If

End Function





Silahkan disesuaikan nama database, user dan passwordnya pada baris di bawah ini:

Db.Open “Driver={MYSQL ODBC 5.3 UNICODE Driver};SERVER=localhost;Database=akademik;” & _ “User=root;Password=;option=3;”

Contoh Penggunaan Module ini :

Buatlah command button, lalu masukkan script berikut:

Private Sub CommandButton1_Click()
Dim RcMhs As Recordset
Set RcMhs = BT("select * from mahasiswa")
For A = 1 To RcMhs.RecordCount
    Range("A" & A) = RcMhs!nim
    Range("B" & A) = RcMhs!nama
    RcMhs.MoveNext
Next
End Sub

Hasilnya seperti pada gambar berikut:

LEAVE A REPLY

Please enter your comment!
Please enter your name here