Import data dari tabel SQL ke Excel dengan VBA Macro

Kali ini saya akan share bagaimana caranya mengimport data dari tabel SQL server ke Worksheet Microsoft Excel melalui VBA Macro. Bagi yang sudah terbiasa dengan Visual Basic 6.0 mungkin hal ini tidak terlalu sulit karena pada dasarnya memiliki metode yang sama yaitu menggunakan object ADO. Oke langsung saja ke codingnya:

Pertama kali buatlah reference ke ADO Object library, yaitu melalui menu Tools->References pada code editor visual basic. Pilih/Centang Microsoft ActiveX Data Object 2.x Library . Sesuaikan dengan versi ADO yang terinstall pada system anda, semakin tinggi versi maka performance akan semakin bagus. dalam contoh ini saya menggunakan ADO v2.8.

Microsoft ActiveX Data Object 2.8

Selanjutnya tulis kode ini, harap sesuaikan Query dan setting koneksi sesuai dengan yang ada pada system anda.

Sub LoadFromSQL()
    Dim StrQuery As String
    Dim Cn As ADODB.Connection
    Dim rs As ADODB.Recordset
         
    'Set Query SQL
    StrQuery = "SELECT * FROM MSDEPT"
     
    'Set informasi koneksi ke SQL Server
    Set Cn = New ADODB.Connection
    Cn.Open "Driver={SQL Server};Server=(local);Database=dbTes;Uid=sa;Pwd=passwordku;"
    
    'Open recordset
    Set rs = New ADODB.Recordset
    rs.Open StrQuery, Cn, adOpenForwardOnly, adLockReadOnly
    
    'Bind ke worksheet
    With Worksheets("sheet1").Range("a1:z500")
        .ClearContents
        .CopyFromRecordset rs
    End With

    'Pembebasan memory
    rs.Close
    Set rs = Nothing
    Cn.Close
    Set Cn = Nothing

End Sub

Selamat mencoba.., Semoga bermanfaat…

One Response to “Import data dari tabel SQL ke Excel dengan VBA Macro”

  1. mukti Says:

    subject – subject mana saja yang boleh dirubah?


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: