Search This Blog

Export Data dari Excel ke SQL Server

Jika anda mempunyai data tabel dalam Microsoft Excel dan ingin memindahkan data atau mengexport data tersebut ke SQL Server anda dapat menggunakan macro dari Excel untuk melakukan export data.

Pada posting kali ini saya akan memberikan tips cara mengexport data dari Excel ke SQL Server menggunakan fasilitas macro excel.

Sebagai contoh kita akan megexport data berupa tabel yang terdiri dari kolom NIK, Nama, dan Alamat. Pada contoh di sini data dari Excel akan diexport ke database SQL Server di local komputer ke database HRD dengan tabel tujuan bernama karyawan.

Berikut contoh script macro utnu export data:
Public Const strConn = "driver={SQL Server};" & _
"server=(local);uid=sa;pwd=passwordsa;database=hrd"

Sub Export_Data()
On Error Resume Next
Dim oCnn As ADODB.Connection
Dim strSql As String
Dim myVar As String

Set oCnn = New ADODB.Connection
oCnn.Open strConn
oCnn.BeginTrans
myVar = ActiveCell.Value
Do While myVar <> ""

strSql = "INSERT INTO Karyawan (NIK,Nama,Alamat) Values('"
strSql = strSql & myVar & "','"
Selection.Offset(0, 1).Select
strSql = strSql & Left(ActiveCell.Value, 20) & "','"
Selection.Offset(0, 1).Select
strSql = strSql & ActiveCell.Value & "')"
oCnn.Execute strSql
Selection.Offset(1, -2).Select
myVar = ActiveCell.Value
If Err.Number <> 0 Then Exit Do

Loop

If Err.Number <> 0 Then
oCnn.RollbackTrans
MsgBox "Gagal menyimpan data !" & vbCrLf & _
Err.Description, vbExclamation
Else
oCnn.CommitTrans
MsgBox "Berhasil menyimpan data !", vbInformation
End If

oCnn.Close
Set oCnn = Nothing

End Sub


Baris pertama program adalah seting konstanta strConn yang akan digunakan sebagai connection string ke SQL Server 2000. Pada contoh ini database berada di local computer, dengan koneksi menggunakan user sa dan passwordnya "passwordsa" ke database hrd.

Sub Export_Data adalah nama macro yang akan menjalankan proses expoert data.

Pada contoh script di atas kita mengexport data yang terdiri dari 3 buah filed, pertama-tama kita tempatkan kursor pada cell NIK baris pertama, kemudian jalankan macro Export data.

Isi data pada kolom NIK akan di assign ke variabel myVar kemudian macro akan menggerakan kursor ke kolom Nama dan Alamat. Isi kolom NIK, Nama dan Alamat dimasukkan ke variabel strSql yang merupakan perintah query insert yang akan menginsert data ke tabel karyawan.

Statemen oCnn.Execute strSql adalah untuk mengeksekusi perintah query insert.

Download contoh file macro excel di sini.

Jika macro pada excel anda tidak dapat dijalankan lihat posting mengenai hal ini di sini.

No comments: