Coding
Klik kanan pada DataGrid1 pilih Retrieve Fileds untuk memasukan
field-field dari tabel karyawan ke komponen DataGrid1 secara otomatis.
Sehingga tampilannya akan seperti gambar dibawah ini :
Langkah selanjutnya adalah mengisikan kode program ke dalam masing-masing komponen.
klik di sembarang tempat di pada komponen Form1 kemudian tekan tombol F7
ini akan memunculkan "Code Window".
Isikan beberapa baris kode program berikut pada bagian paling atas sebelum kode Private Sub Form_Load().
Option Explicit
Dim koneksi_ado As ADODB.Connection
Dim rskaryawan As ADODB.Recordset
Kode diatas mendeklarasikan variabel koneksi_ado sebagai adodb conection dan rskaryawan sebagai adodb recordset.
Dobel Klik Komponen Form1, kemudian ketik kode berikut :
Dim SQLStr As String
Set koneksi_ado = New ADODB.Connection
Set rskaryawan = New ADODB.Recordset
koneksi_ado.ConnectionString= & _
"Provider=Microsoft.Jet.OLEDB.4.0; & _
Password=;Data Source=" & App.Path & "\sample.mdb" & _
";Persist Security Info=True"
koneksi_ado.Open
Adodc1.Enabled = True
SQLStr = "select * from karyawan order by nama"
rskaryawan.Open SQLStr, koneksi_ado, adOpenDynamic, adLockOptimistic
DataGrid1.Refresh
Label1.Caption = "Status :"
Kode diatas akan dieksekusi pada event form_load sehingga kode diatas akan dieksekusi ketika sebuah aplikasi pertama dijalankan.
Langkah selanjutnya, mengisikan kode program utama yang akan di picu oleh komponen CommandButton1. Dobel klik CommandButton1, kemudian ketik kode berikut :
Dim EXCELAPPKU As Excel.Application
Dim excelbookku As Excel.Workbook
Dim excelsheetku As Excel.Worksheet
Dim baris, datake As Integer
Label1.Caption = "Status : Prosesing Data...."
Set EXCELAPPKU = New Excel.Application
Set excelbookku = EXCELAPPKU.Workbooks.Add
With EXCELAPPKU
.StandardFontSize = "10"
End With
EXCELAPPKU.Visible = True
Set excelsheetku = excelbookku.Worksheets(1)
excelsheetku.Select
Range("A1:C1").Select
Selection.MergeCells = True
Selection.HorizontalAlignment = xlCenter
ActiveCell.FormulaR1C1 = UCase("Data Karyawan")
Selection.Font.Bold = True
Selection.Font.Name = "Verdana"
With excelsheetku
.Cells(2, 1).Value = "NIK"
.Cells(2, 2).Value = "Nama"
.Cells(2, 3).Value = "Jabatan"
Label1.Caption = "Status : Prosesing Data..."
baris = 3
datake = 0
If Not rskaryawan.BOF Then
rskaryawan.MoveFirst
While Not rskaryawan.EOF
Label1.Caption = "Status : Exporting Data ke " & datake
Label1.Refresh
datake = datake + 1
.Cells(1, 5).Value = "Fetching data ke " & datake
.Cells(baris, 1) = rskaryawan![NIK]
.Cells(baris, 2) = rskaryawan![nama]
.Cells(baris, 3) = rskaryawan![jabatan]
baris = baris + 1
rskaryawan.MoveNext
Wend
End If
.Cells(1, 5).ClearContents
.Columns("A:A").EntireColumn.AutoFit
.Columns("B:B").EntireColumn.AutoFit
.Columns("C:C").EntireColumn.AutoFit
End With
rskaryawan.Close
Label1.Caption = "Status : Selesai."
On Error GoTo 0
Set excelsheetku = Nothing
Set excelbookku = Nothing
EXCELAPPKU.Quit
MsgBox "Export data selesai", vbInformation, "Informasi"
Sekarang anda pilih menu Run | Start untuk menjalankan aplikasi. Tekan tombol "Eksport" untuk melihat outputnya.
Berikut ini gambar aplikasi pada saat runtime :
Dan gambar dibawah ini adalah gambar hasil outputnya :
3 comments:
Wah mas artikelnya bagus banget..
thaks helpfull banget buat programer pemula kaya saya..
ok sama-sama mas
senang artikel ini bisa bermanfaat
jangan lupa kunjungi juga blog saya yang ini ya..
ciao...
code u/ menset format Cell-nya gimana yaaa?
cos sya coba dg data [TanggalMasuk]="02/06/2010". Ketika diexport ke X-cels hasilnya '40215'
mohon sarannya.
Thks atas artikel ini yang memberi pencerahan.
silahkan jangan ragu-ragu u/ sharing ilmunya ya...
Post a Comment