Pages

Tutorial Membuat Laporan Dengan Active Report Bag 1

Active Report adalah salah satu tool yang digunakan untuk pembuatan report di visual basic, mulai dari report yang sederhana sampai yang komplek, berikut contoh beberapa report yang bisa dibuat menggunakan active report.

Tampilkan Gambar




Selain itu active report juga sudah terintegrasi dengan IDE visual basic sehingga pembuatan report pun menjadi lebih menyenangkan, lalu bagaimana cara meload datanya ? Caranya gampang cukup menggunakan query biasa seperti query-query yang digunakan dalam pembuatan aplikasi.

Untuk contoh pada tutorial pertama ini kita akan menampilkan data siswa dengan struktur tabel seperti berikut :

Tampilkan Gambar


1. Mendesain report 

Mendesain report di Active Report sama mudahnya seperti mendesain tampilan di form, tinggal drag komponennya kemudian ganti nilai properties masing-masing komponennya sesuai kebutuhan.

Oke langsung saja aktifkan project vb Anda kemudian klik kanan di nama project -> Add -> Data Dynamics ActiveReport 2.0. Lihatlah gambar di bawah ini

Tampilkan Gambar

Jika berhasil pada panel project explorer akan ketambahan node baru dengan nama Designers seperti nampak pada gambar berikut ini :

Tampilkan Gambar

Kita akan mengganti nilai dari properties Name dan Caption seseusai setting berikut :
Name = arLapSiswa
Caption = Laporan Data Siswa

Untuk lebih jelasnya perhatikan gambar berikut ini

Tampilkan Gambar

Untuk properties yang lain bisa Anda ganti nilainya sesuai kebutuhan.
Berikutnya kita akan menambahkan judul report, objek yang akan digunakan adalah objek label seperti yang nampak pada gambar berikut ini :

Tampilkan Gambar

Nilai caption dari labelnya kita abaikan saja, karena akan kita ganti pada saat runtime (program dijalankan).

Setelah selesai menambahkan judul reportnya, kita akan menambahkan judul kolom, objek yang digunakan masih sama yaitu label seperti yang nampak pada gambar berikut ini :

Tampilkan Gambar

Selanjutnya kita akan menambahkan border untuk judul kolom nya, caranya adalah dengan menyeleksi label “No.” sampai “Tanggal Lahir”, kemudian klik kanan pada salah satu label yang diseleksi pilih Format Border
 Perhatikanlah gambar di bawah ini :

Tampilkan Gambar

pilih jenis border pada pilihan Line Styles, kemudian pada bagian Preview border yang diaktifkan hanya bagian “Atas”, “Kiri” dan “Bawah” dan hasilnya akan nampak seperti gambar berikut ini :

Tampilkan Gambar

Selanjutkan kita akan menambahkan border untuk label ayah
Tampilkan Gambar

Gimana? jadi terlihatkan perbedaannya kenapa dipisah pembuatan border label “Ayah” dengan label lainnya. Hasil akhir penambahan border judul kolom seperti yang nampak pada gambar berikut :

Tampilkan Gambar

Berikutnya kita akan menambahkan objek TextBox yang akan digunakan untuk menampilkan data seperti gambar berikut ini :

Tampilkan Gambar

Khusus untuk textbox “No.” (tag merah) properties Textnya diset = 0, untuk textBox lainnya diabaikan saja dan kemudian untuk menambahkan border langkah-langkahnya sama seperti sebelumnya, hanya saja border bagian “Atas” tidak aktifkan

kemudian untuk setting border textbox ayah

ada satu komponen lagi yang akan kita tambahkan yaitu komponen ADO Data Control dan saya rasa tidak perlu lagi dijelaskan apa kegunaan komponen ini.

Tampilkan Gambar

Berikut adalah gambar penampakan hasil akhir desain report siswanya.


2. Kode untuk report

Active Report sama seperti form dan komponen lainnya mempunyai event-event yang bisa kita isikan kode program sesuai kebutuhan, biasanya nama event tersebut diawali oleh nama sectionya, contohnya seperti gambar berikut ini silahkan diperhatikan :


pada contoh diatas section “Detail” mempunyai beberapa event yaitu AfterPrint, BeforePrint, Format.

Disini saya hanya akan mencontohkan penggunaan event Format dan BeforePrint.

Private Sub Detail_Format()
    With adoSiswa.Recordset
        If Not .EOF Then
            txtNo.Text = Val(txtNo.Text) + 1

            txtNIS.Text = .Fields("nomorinduk").Value
            txtNama.Text = .Fields("nama").Value
            txtTempatLahir.Text = "" & .Fields("tempat_lahir").Value ' untuk menghandle nilai null

            If IsDate(.Fields("tgl_lahir").Value) Then
                txtTglLahir.Text = Format(.Fields("tgl_lahir").Value, "dd/MM/yyyy")
            Else
                txtTglLahir.Text = ""
            End If

            txtAyah.Text = "" & .Fields("ayah").Value ' untuk menghandle nilai null
        End If
    End With
End Sub

Sampai disini report sudah siap digunakan/dipanggil via aplikasi


3. Memanggil report dari aplikasi

Balik ke form visual basic kemudian buat desain form seperti yang nampak pada gambar berikut ini :


kemudian untuk menampilkan reportnya ketiklah kode berikut :

Private Sub cmdPreview_Click()
    Dim strCon  As String
    Dim strSql  As String

    strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\sampleDb.mdb"
    strSql = "SELECT * FROM siswa"

    With arLapSiswa
        .adoSiswa.ConnectionString = strCon
        .adoSiswa.Source = strSql

        .lblHeader1.Caption = "SEKOLAH MENGENGAH ..."
        .lblHeader2.Caption = "Laporan Data Siswa"

        .Show
    End With
End Sub 

Gimana ? Simple kan 
jalankan program kemudian klik tombol “Tampilkan Report”, akan ditampilkan hasil preview data siswanya.


waduhh, ternyata setelah pindah ke halaman 2 ada data siswa yang nampil tidak sesuai harapan, lihat gambar berikut :


Setelah diusut ternyata penyebabnya adalah nilai dari tempat lahirnya terlalu panjang sehingga tampilan report jadi berantakan, nah bagaimana cara menyelesaikan masalah ini ? Disinilah peran penting dari event Detail_BeforePrint.

Oke kita kembali lagi ke desain report siswanya kemudian tambahkan kode berikut pada event Detail_BeforePrint :

Private Sub Detail_BeforePrint()
    txtNo.Height = Detail.Height
    txtNIS.Height = Detail.Height
    txtNama.Height = Detail.Height
    txtTempatLahir.Height = Detail.Height
    txtTglLahir.Height = Detail.Height
    txtAyah.Height = Detail.Height
End Sub

Klo sudah jalankan lagi programnya dan kita lihat hasil reportnya seperti nampak pada gambar berikut ini :


Selesai,  sampai ketemu lagi di seri tutorial active report berikutnya.
Dikutip dari : http://coding4ever.net

Jika anda belum punya software active report silahkan download disini.

anda tidak mau ribet  ..? saya akan memberikan link download tutorial dan source codenya di akhir tulisan ini silahkan di download dan semoga dapat bermanfaat.

DOWNLOAD :
1.  Tutorial
2.  Source Code



Tags :
Tutorial Membuat Laporan Dengan Active Report,Tutorial Membuat Laporan Dengan Active Report Di VB, Trik Active Report, Contoh Source Code Laporan Dengan Active Report

Menampilkan Data Dari Tabel Dalam Database Ke ComboBox

Sudah bisakah anda Menampilkan Data Dari Tabel Dalam Database Ke ComboBox ? Jika anda sudah bisa tidak usah di baca artikel atau postingan ini. Bagi yang belum bisa silahkan simak tulisan ini semoga dapat membantu memecahkan masalah anda.

Pada postingan sebelumnya saya membahas tentang Hanya Bisa Input Angka dan Huruf, kali ini kita lanjutkan dengan membahas cara menampilkan data ke ComboBox dari data dalam database. Caranya sebenarnya hampir sama dengan additem pada combobox tinggal kita tambahi perulangan. Anda penasaran?

Ikutilah langkah-langkah berikut ini :
Buatlah sebuah form seperti gambar berikut ini

Tampilkan Gambar

Sebagai contoh saya menggunakan database ms access 2003 dengan nama DB_MHS.mdb dan tabelnya adalah Tbl_Mhs. Desain tabelnya seperti yang nampak pada gambar berikut ini yang tentunya sudah ada datanya :

Tampilkan Gambar

Jika sudah mendesain formnya silahkan silahkan tambahkan sebuah modul yang nantinaya kita gunakan untuk mengetikan kode koneksi vb dengan databasenya. Klik menu Project-Add Modul kemudian ketikan modul berikut ini :

Public Conn As New ADODB.Connection

'Untuk koneksi ke database ms access
Public Sub KonekDb()
    Set Conn = New ADODB.Connection
    
    'Jika menggunakan ms access 2007 keatas pakailah koding berikut:
    'Conn.Open "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" & App.Path & "\db_mhs.accdb;"
    'Conn.CursorLocation = adUseClient

    Conn.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\DB_MHS.mdb"
    Conn.CursorLocation = adUseClient
End Sub

Lanjutkan ke koding formnya, silahkan double klik formnya dan tulis koding berikut ini pada  General Deklaration

Dim RsDataCombo As New ADODB.Recordset

Kemudian tulislah koding pada bagian Form Load koding ini berfungsi untuk menampilkan data ke ComboBox yaitu data nim dan nama pada saat form di load atau dijalankan

Private Sub Form_Load()
    Call KonekDb
    Combo1.Clear
    Set RsDataCombo = New ADODB.Recordset
    RsDataCombo.Open "SELECT * FROM Tbl_Mhs", Conn, adOpenDynamic, adLockOptimistic
    Do Until RsDataCombo.EOF
        Combo1.AddItem RsDataCombo!nim & Space(5) & RsDataCombo!nama
        RsDataCombo.MoveNext
    Loop
    RsDataCombo.Close
End Sub

Note : Space(5) maksudnya adalah memberi jarak 5 spasi antara data nim dan nama pada combobox

Jika sudah silahkan ketikan koding lagi pada Combo1 Click kodingnya seperti berikut in, berfungsi untuk menampilkan data pada textbox  dan nim pada combobox sesuai dengan data nim yang dipilih atau di klik di combo box.

Private Sub Combo1_Click()
    Call KonekDb
    Set RsDataCombo = New ADODB.Recordset
    RsDataCombo.Open "SELECT * FROM Tbl_Mhs WHERE nim='" & Left(Combo1.Text, 5) & "'", _
                     Conn, adOpenDynamic, adLockOptimistic
    RsDataCombo.Requery
    With RsDataCombo
        If .EOF And .BOF Then
             MsgBox "NIM TIDAK DITEMUKAN", _
                    vbOKOnly + vbCritical, "Error"
        Exit Sub
        Else
            Combo1.Text = !nim
            Text1.Text = !nama
            Text2.Text = !alamat
        End If
    End With
    RsDataCombo.Close
End Sub

Note : Left(Combo1.Text, 5) maksudnya adalah mengambil 5 karakter dari kiri sesuai panjang field nim dalam tabel. Kenapa pakai perintah left segala..? karean yang di tampilkan dalam combobox tidak hanya nim saja tapi ada data nama juga padahal perintah wherenya berdasarkan nim.

Supaya lebih jelas silahkan lihat gambar screenshot kodingnya berikut ini:

Tampilkan Gambar



 Jika sudah selesai silahkan di jalankan, kalau berhasil maka akan tampil seperti gambar animasi berikut ini:




Trik ini dapat anda terapkan pada database selain Ms Access misalnya Ms SQL Server,MySQL Server dll tinggal setting atau ganti koneksinya saja. Semoga tulisan ini bermanfaat dan membantu, jika kurang jelas dengan postingan menampilkan data ke ComboBox silahkan kasih komentar di kolom komentar.


Silahkan Download Source Codenya di Link di bawah ini





Keywords :
Menampilkan data ke combobox, Menampilkan Data Dari Tabel Dalam Database Ke ComboBox, Trik ComboBox

Koding Hanya Bisa Input Angka dan Huruf di VB

Pada postingan sebelumnya saya membahas cara mengatasi error karena tanda petik. Untuk postingan kali ini saya akan share Koding Hanya Bisa Input Angka dan Huruf di VB.

Bagaimana sebuah textbox hanya bisa di input angka atau huruf saja.? Pernahkah anda dalam membuat sebuah aplikasi menginginkan sebuah textbox yang hanya bisa di input angka atau huruf saja.? Mungkin ini sepele, tapi jika tidak tahu koding dan caranya membuat kita pusing juga. Dengan sedikit koding masalah tersebut dapat di atasi.

Saya akan share koding untuk input angka saja dan huruf saja pada sebuah textbox dalam vb 6. Sebagai contoh saya akan mendesain sebuah form sederhana seperti nampak pada gambar berikut ini.

Tampilkan Gambar

Berikut koding untuk input angka saja, tulislah koding berikut pada text1 pada event Keypress 

Private Sub Text1_KeyPress(KeyAscii As Integer)
    If Not (KeyAscii >= Asc("0") _
            And KeyAscii <= Asc("9") _
            Or KeyAscii = Asc(",") & Chr(13) _
            Or KeyAscii = vbKeyBack) Then
        Beep
        KeyAscii = 0
    End If
End Sub


Kemudian tulislah koding berikut ini pada text2 pada event Keypress berfungsi untuk input huruf saja :

Private Sub Text2_KeyPress(KeyAscii As Integer)
    If Not (KeyAscii >= Asc("a") & Chr(13) _
            And KeyAscii <= Asc("z") & Chr(13) _
            Or (KeyAscii >= Asc("A") & Chr(13) _
                And KeyAscii <= Asc("Z") & Chr(13) _
                Or KeyAscii = vbKeyBack _
                Or KeyAscii = vbKeyDelete _
                Or KeyAscii = vbKeySpace)) Then
        Beep
        KeyAscii = 0
    End If
End Sub

Untuk lebih jelas lagi saya beri screenshot koding di atas.

Tampilkan Gambar

Jika sudah silahkan di run dan di coba untuk memasukan angka dan huruf, semoga berhasil. Jika kurang jelas silahkan kasih komentar.
Demikian postingan Koding Hanya Bisa Input Angka dan Huruf di VB ini semoga  bermanfaat. Jika anda menginginkan source codenya silahkan download di link di bawah  ini.


DOWNLOAD
Koding Hanya Bisa Input Angka dan Huruf di VB



Keywords:
Koding Hanya Bisa Input Angka dan Huruf di VB,Hanya Bisa Input Angka dan Huruf, Cara Hanya Bisa Input Angka dan Huruf di VB,Triks Textbox,Trik VB

Mengatasi Error Karena Tanda Petik Di VB

Pada postingan sebelumnya saya membahas cara Eksport Database Ke File Excel pada kesempatan ini saya akan membahas cara mengatasi error yang di sebabkan karena tanda petik.

SQL Query
SQL yang memiliki kepanjangan "Structured Query Language" merupakan sebuah bahasa yang digunakan untuk mengakses dan memanipulasi data yang berada di dalam tabel yang terdapat pada basis data atau database. Bahasa ini merupakan bahasa standar yang dapat digunakan pada semua database server (MS SQL Server, MySQL Server,ORACLE,Ms.Access). Bahasa atau sintak SQL tersebut tersusun dari kumpulan kata berupa String.

STRING
String merupakan kumpulan dari berbagai karakter. Beberapa karakter yang akan mengganggu dan akan menimbulkan error pada bahasa SQL antara lain:

1. Single quoted atau kutip tunggal ( ' )
2. Double quoted atau kutip ganda ( " )

Karakter-karakter diatas jika masuk ke dalam bahasa SQL, akan merusak sintak bahasa SQL tersebut dan menimbulkan error.

Error tersebut dapat terjadi pada waktu simpan,edit maupun pencarian data. Misalnya kita mau menyimpan sebuah nama yang mengandung tanda petik kita ambil nama As'ari maka pada saat kita tekan tombol simpan akan muncul pesan error yang "Run-times Error '-2147217900 (80040e14)': Syntax error (missing operator) in query expression". Seperti yang nampak pada gambar berikut ini :

Tampilkan Gambar



Lalu bagaimanakah Mengatasi Error Karena Tanda Petik Di VB ?  Buatlah sebuah public function pada sebuah modul. Kenapa harus pada madul membuat functionnya..?  Supaya bisa di panggil dari form mana saja dalam sebuah project, tidak perlu nulis function dalam setiap formnya dan dapat memperisngkat waktu kita dalam nulis koding.

Tulislah function berikut pada sebuah modul
Jika kita mau minyimpan data yang mengandung kata petik panggil function tersebut dengan cara menambahkan kata Rep di depan komponen yang kita prediksi nantinya datanya mengandung  petik seperti nama.
Lihat dan perhatikan contoh penerapan dalam simpan data seperti  pada gambar berikut ini


Lihat dan perhatikan contoh penerapan dalam edit/update data seperti  pada gambar berikut ini

Untuk penerapan di pencarian data pastinya temen-temen sudah bisa dengan melihat gambar di atas, cukup menambahi kata Rep di depan komponennya saja. Cukup mudah bukan, semoga tutorial yang singkat ini dapat membantu mengatasi error dikarenakan tanda petik.



Keyword:
Mengatasi Error Karena Tanda Petik Di VB,Run-times Error '-2147217900 (80040e14)': Syntax error (missing operator) in query expression,Run-times Error '-2147217900 (80040e14)'

Eksport Database Ke File Excel Dengan VB

Eksport Database Ke File Excel Dengan VB.  Pada postingan sebelumnya kita membahas cara Import Database Dari File Excel, untuk kesempatan kali ini saya akan membahas tentang cara eksport database ke ms excel seperti yang telah saya janjikan sebelumnya.

Pada postingan ini saya akan menggunakan database ms access kemudian  kita lakukan eksport ke ms excel, trik ini dapat anda terapkan pada database selain ms access misalnya MySQL SERVER, MS SQL SERVER atau pun yang lainnnya tinggal mengganti koneksi databasenya saja.

Data yang dieksport alurnya seperti ini : data di tampilkan di msflexgrid lalu kita eksport ke excel, jadi data yang tampil di msflexgrid saja yang kita eksport nantinya, jadi kita bisa menentukan data yang mana saja yang ingin kita eksport.

Bagaimana Cara Eksport Database Ke File Excel Dengan VB ? Ikutilah caranya sebagai berikut ini :

Buka Visual Basicnya kemudian buatlah sebuah form seperti berikut ini

Tampilkan Gambar

Lalu Cari dan tambahkan references Microsoft ActiveX Data Object 2.x Librari dan ms excel 14 Object Library kalau tidak ada ms Excel 14 bisa versi 12 atau yang lebih rendah , caranya  klik menu Project-References maka akan muncul jendela seperti gambar berikut ini lalu cari dan centang Object Library yang dimaksuhkan kemudin klik ok.

Tampilkan Gambar

Jika sudah selanjutnya membuat koding. sebelumnya tambahkan sebuah modul caranya klik menu Project-Add Modul kemudian ketiklah koding berikut ini

'Untuk koneksi database ms access pd waktu memasukan data ke dlm database
 Public Sub KonekDb()
    Set Conn = New ADODB.Connection
    
    Conn.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\DB_MHS.mdb"
    Conn.CursorLocation = adUseClient
End Sub

'Prosedur Untuk Eksport
Public Sub FlexGrid_To_Excel(TheFlexgrid As MSFlexGrid, _
                             TheRows As Integer, TheCols As Integer, _
                             Optional GridStyle As Integer = 1, _
                             Optional WorkSheetName As String)

    Dim objXL As New Excel.Application
    Dim wbXL As New Excel.Workbook
    Dim wsXL As New Excel.Worksheet
    Dim intRow As Integer    ' counter
    Dim intCol As Integer    ' counter

    If Not IsObject(objXL) Then
        MsgBox "You need Microsoft Excel to use this function", _
               vbExclamation, "Print to Excel"
        Exit Sub
    End If

    On Error Resume Next

    ' Membuka Excel
    objXL.Visible = True
    Set wbXL = objXL.Workbooks.Add
    Set wsXL = objXL.ActiveSheet

    ' Nama worksheet
    With wsXL
        If Not WorkSheetName = "" Then
            .Name = WorkSheetName
        End If
    End With

    ' Fill worksheet
    For intRow = 1 To TheRows
        For intCol = 1 To TheCols
            With TheFlexgrid
                wsXL.Cells(intRow, intCol).Value = _
                .TextMatrix(intRow - 1, intCol - 1) & " "
            End With
        Next
    Next

    ' Format Tampilan Excel
    For intCol = 1 To TheCols
        wsXL.Columns(intCol).AutoFit
        wsXL.Range("a1", Right(wsXL.Columns(TheCols).AddressLocal, _
                               1) & TheRows).AutoFormat GridStyle
    Next
End Sub

Kemudian double klik formnya lalu ketikkan koding berikut ini pada form load yang berfungsi untuk menampilkan data pada grid

Private Sub Form_Load()
    MSFlexGrid1.Clear
    Call AktifMSFlexGrid1
        
    MSFlexGrid1.Rows = 2
    Baris = 0
    Call KonekDb
    Set RsMhs = New ADODB.Recordset
    RsMhs.Open "SELECT * FROM Tbl_Mhs ORDER BY nim ASC", _
                Conn, adOpenDynamic, adLockOptimistic
    
    If RsMhs.BOF Then
        Exit Sub
    Else
        With RsMhs
            .MoveFirst
            Do While Not .EOF
            On Error Resume Next
            Baris = Baris + 1
            MSFlexGrid1.Rows = Baris + 1
            MSFlexGrid1.TextMatrix(Baris, 0) = Baris
            MSFlexGrid1.TextMatrix(Baris, 1) = !nim
            MSFlexGrid1.TextMatrix(Baris, 2) = !nama
            MSFlexGrid1.TextMatrix(Baris, 3) = !alamat
            MSFlexGrid1.TextMatrix(Baris, 4) = !jurusan
            .MoveNext
        Loop
        End With
    End If
End Sub

Kemudian pada bagian general declaration ketikan koding berikut ini :

Dim RsMhs As New ADODB.Recordset
Dim Baris As Integer
 
'Untuk Mengatur Tampilan MSFlexGrid1
Sub AktifMSFlexGrid1()
    MSFlexGrid1.Cols = 5
    MSFlexGrid1.RowHeightMin = 300
    '-------------------------------------------------
    MSFlexGrid1.Col = 0
    MSFlexGrid1.Row = 0
    MSFlexGrid1.Text = "NO"
    MSFlexGrid1.CellFontBold = True
    MSFlexGrid1.ColWidth(0) = 500
    MSFlexGrid1.AllowUserResizing = flexResizeColumns
    MSFlexGrid1.CellAlignment = flexAlignCenterCenter
    '-------------------------------------------------
    MSFlexGrid1.Col = 1
    MSFlexGrid1.Row = 0
    MSFlexGrid1.Text = "NIM"
    MSFlexGrid1.CellFontBold = True
    MSFlexGrid1.ColWidth(1) = 900
    MSFlexGrid1.AllowUserResizing = flexResizeColumns
    MSFlexGrid1.CellAlignment = flexAlignCenterCenter
    '-------------------------------------------------
    MSFlexGrid1.Col = 2
    MSFlexGrid1.Row = 0
    MSFlexGrid1.Text = "NAMA MAHASISWA"
    MSFlexGrid1.CellFontBold = True
    MSFlexGrid1.ColWidth(2) = 2000
    MSFlexGrid1.AllowUserResizing = flexResizeColumns
    MSFlexGrid1.CellAlignment = flexAlignCenterCenter
    '-------------------------------------------------
    MSFlexGrid1.Col = 3
    MSFlexGrid1.Row = 0
    MSFlexGrid1.Text = "ALAMAT"
    MSFlexGrid1.CellFontBold = True
    MSFlexGrid1.ColWidth(3) = 2000
    MSFlexGrid1.AllowUserResizing = flexResizeColumns
    MSFlexGrid1.CellAlignment = flexAlignCenterCenter
    '---------------------------------------------------
    MSFlexGrid1.Col = 4
    MSFlexGrid1.Row = 0
    MSFlexGrid1.Text = "JURUSAN"
    MSFlexGrid1.CellFontBold = True
    MSFlexGrid1.ColWidth(4) = 2000
    MSFlexGrid1.AllowUserResizing = flexResizeColumns
    MSFlexGrid1.CellAlignment = flexAlignCenterCenter
End Sub

Jika sudah ketikan koding berikut ini pada tombol Eksport

Private Sub CmdEksport_Click()
    FlexGrid_To_Excel MSFlexGrid1, MSFlexGrid1.Rows, MSFlexGrid1.Cols, 1, "Data Mahasiswa"
    DoEvents
End Sub 


Untuk lebih jelasnya lihat gambar berikut ini...

Jika sudah semua silahkan di run koding diatas sudah bisa untuk melakukan eksport data.

Untuk koding tombol refresh,tombol close dan pencarian data tidak saya jelaskan di sini, untuk koding lengkapnya silahkan download source codenya yang saya sertakan link downloadnya di akhir tulisan ini. Untuk melakukan eksport database ke ms excel dengan koding yang telah saya jelaskan di atas sudah bisa digunakan.






Tags:
Eksport Database, Excel, Eksport Import Database, Visual Basic 6,Eksport Database Ke File Excel Dengan VB,Cara Eksport Database Ke File Excel Dengan VB

Import Database Dari File Excel Dengan VB

Import Database Dari File Excel Dengan VB. Pada kesempatan kali ini saya akan membahas tentang import database dari file excel dengan menggunakan vb 6 pada kesempatan sebelumnya saya pernah membahas tentang Membaca Dan Menampilkan Data Dari File Excel di VB 6, postingan ini merupakan kelanjutan dari postingan tersebut. Pada postingan tersebut hanya membaca dan menampilkan data dari file excel saja,  pada kesempatan kali ini setelah data file excelnya tampil pada msflexgrid kita akan masukan ke dalam sebuah tabel dalam database. Jadi tidak hanya di tampilkan saja melainkan di import masuk kedalam tabel.

Ini sangat berguna jika kita menginginkan memasukan sebuah data dari file excel sehingga kita tidak perlu menginput satu persatu datanya atau aplikasi yang kita buat ada fitur import database dari file excel. Bagaimanakah cara Import Database Dari File Excel Dengan VB ?  ikutilah langkah-langkahnya sebagai berikut ini


Buka Microsoft Visual Basic 6 dan buat dan desainlah sebuah form seperti gambar yang ada di bawah ini

Tampilkan Gambar


Jika sudah selesai mendesainnya lalu tambahkan sebuah modul dengan cara klik menu Project-Add Modul lalu ketikan kode berikut ini

Public conXls As ADODB.Connection
Public Conn As New ADODB.Connection

'Function Ini di gunakan untuk koneksi ke file excel
Public Function openExcelFile(ByVal excelFile As String) As Boolean
    On Error GoTo errHandle
    '-----------------------
    'Jika menggunakan Office 2007 ke atas ganti Provider=Microsoft.Jet.OLEDB.4.0;
    'menjadi Provider=Microsoft.ACE.OLEDB.12.0;
    
    Set conXls = New ADODB.Connection
    conXls.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" _
                            & "Data Source=" & Replace(excelFile, Chr$(0), "") & ";" _
                            & "Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"""
    conXls.Open
    '-------------------
    openExcelFile = True
    Exit Function
errHandle:
    openExcelFile = False
End Function

'Untuk koneksi database ms access pd waktu memasukan data ke dlm database
Public Sub KonekDb()
    Set Conn = New ADODB.Connection
    
    'Jika menggunakan ms access 2007 keatas pakailah koding berikut:
    'Conn.Open "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" & App.Path & "\db_mhs.accdb;"
    'Conn.CursorLocation = adUseClient
    
    Conn.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\DB_MHS.mdb"
    Conn.CursorLocation = adUseClient
End Sub


Jika Sudah buka desain formnya kemudian double klik formnya kemudian ketikan kode berikut ini pada general declarations

    Dim rsExcel     As ADODB.Recordset
    Dim strSql      As String
    Dim Baris       As Long
    Dim SQL         As String

'Untuk Mengatur Tampilan MSFlexGrid1
Sub AktifMSFlexGrid1()
    MSFlexGrid1.Cols = 5
    MSFlexGrid1.RowHeightMin = 300
    '-------------------------------------------------
    MSFlexGrid1.Col = 0
    MSFlexGrid1.Row = 0
    MSFlexGrid1.Text = "NO"
    MSFlexGrid1.CellFontBold = True
    MSFlexGrid1.ColWidth(0) = 500
    MSFlexGrid1.AllowUserResizing = flexResizeColumns
    MSFlexGrid1.CellAlignment = flexAlignCenterCenter
    '-------------------------------------------------
    MSFlexGrid1.Col = 1
    MSFlexGrid1.Row = 0
    MSFlexGrid1.Text = "NIM"
    MSFlexGrid1.CellFontBold = True
    MSFlexGrid1.ColWidth(1) = 900
    MSFlexGrid1.AllowUserResizing = flexResizeColumns
    MSFlexGrid1.CellAlignment = flexAlignCenterCenter
    '-------------------------------------------------
    MSFlexGrid1.Col = 2
    MSFlexGrid1.Row = 0
    MSFlexGrid1.Text = "NAMA MAHASISWA"
    MSFlexGrid1.CellFontBold = True
    MSFlexGrid1.ColWidth(2) = 2000
    MSFlexGrid1.AllowUserResizing = flexResizeColumns
    MSFlexGrid1.CellAlignment = flexAlignCenterCenter
    '-------------------------------------------------
    MSFlexGrid1.Col = 3
    MSFlexGrid1.Row = 0
    MSFlexGrid1.Text = "ALAMAT"
    MSFlexGrid1.CellFontBold = True
    MSFlexGrid1.ColWidth(3) = 2000
    MSFlexGrid1.AllowUserResizing = flexResizeColumns
    MSFlexGrid1.CellAlignment = flexAlignCenterCenter
    '---------------------------------------------------
    MSFlexGrid1.Col = 4
    MSFlexGrid1.Row = 0
    MSFlexGrid1.Text = "JURUSAN"
    MSFlexGrid1.CellFontBold = True
    MSFlexGrid1.ColWidth(4) = 2000
    MSFlexGrid1.AllowUserResizing = flexResizeColumns
    MSFlexGrid1.CellAlignment = flexAlignCenterCenter
End Sub


Jika sudah selesai kemudian double klik CmdBuka dan ketikanlah kode berikut ini yang berfungsi untuk menampilkan data dari file excel ke dalam sebuah MsFlexgrid:

Private Sub CmdBuka_Click()
    MSFlexGrid1.Clear
    Call AktifMSFlexGrid1
    Baris = 0
    'Memilih File Excel
    With CommonDialog1
        .DialogTitle = "Pilih File Excelnya (.xls)"
        .InitDir = App.Path
        .Filter = "SQL Files (*.xls)|*.xls"
        'jika menggunakan file excel 2007 keatas
        'untuk .Filter = "SQL Files (*.xls)|*.xls" '
        'Ganti dengan .Filter = "SQL Files (*.xlsx)|*.xlsx"
        .ShowOpen
    End With
    'menampilkan nama filenya di textbox
    TxtNamaFile.Text = CommonDialog1.FileName
    'Membuka File Excel
    If openExcelFile(CommonDialog1.FileName) Then
        'selanjutnya data yg diambil ada di sheet1,
        'sheet disini sama seperti tabel yang ada di database
        strSql = "SELECT * FROM [Sheet1$]" ' penting !!!, jangan lupa menambahkan karakter $
        Set rsExcel = New ADODB.Recordset
        rsExcel.Open strSql, conXls, adOpenForwardOnly, adLockReadOnly
        'tampilkan data yg ada sheet1 ke MSFlexGrid1
        If Not rsExcel.EOF Then
            Do While Not rsExcel.EOF
                Baris = Baris + 1
                MSFlexGrid1.Rows = Baris + 1
                MSFlexGrid1.TextMatrix(Baris, 0) = Baris
                MSFlexGrid1.TextMatrix(Baris, 1) = rsExcel(0).Value
                MSFlexGrid1.TextMatrix(Baris, 2) = rsExcel(1).Value
                MSFlexGrid1.TextMatrix(Baris, 3) = rsExcel(2).Value
                MSFlexGrid1.TextMatrix(Baris, 4) = rsExcel(3).Value
                rsExcel.MoveNext
                DoEvents
            Loop
        End If
        rsExcel.Close
        Set rsExcel = Nothing
    End If
End Sub


Jika sudah kemudian double klik CmdImport dan ketikankah kode berikut ini yang berfungsi untuk menyimpan data yang telah tampil di MsFlexGrid

Private Sub CmdImport_Click()
On Error GoTo AdaError
    Dim i As Integer
    Call KonekDb
    For i = 1 To MSFlexGrid1.Rows - 1
        SQL = ""
        SQL = "INSERT INTO Tbl_Mhs(Nim,Nama,alamat,jurusan) " _
            & "VALUES ('" & MSFlexGrid1.TextMatrix(i, 1) & "'," _
            & "'" & MSFlexGrid1.TextMatrix(i, 2) & "'," _
            & "'" & MSFlexGrid1.TextMatrix(i, 3) & "'," _
            & "'" & MSFlexGrid1.TextMatrix(i, 4) & "')"
        Conn.Execute (SQL), , adCmdText
        DoEvents
    Next i
    MsgBox "Import data berhasil, Silahkan di cek...", vbInformation, ".:: Sukses..."
    Exit Sub
AdaError:
If Err.Number = -2147467259 Then
    MsgBox "NIM " & MSFlexGrid1.TextMatrix(i, 1) & " sudah ada dalam database." & vbCrLf & _
    "Pada file excelnya di baris " & i + 1 & " ,silahkan hapus terlebih dahulu lalu ulangi.", vbCritical, ".:: Gagal...!!!"
    Exit Sub
Else
    MsgBox "Error No : " & Err.Number & vbCrLf & _
    Err.Description, vbCritical + vbOKOnly, "Error......"
End If
End Sub


Kemudian tulislah kode pada bagian form load, double klik formnya kemudian tulis kode berikut ini

Private Sub Form_Load()
    Call AktifMSFlexGrid1
End Sub




Jika sudah semuanya silahkan programnya di jalankan,jika berhasil akan tampil seperti gambar animasi berikut ini



Selesai. semoga tutorial ini bermanfaat. Jika anda tidak ingin ribet mendesain dan menulis kodenya silahkan download source kodenya yang telah saya sediakan di link di akhir tulisan ini. Silahkan di download dan digunakan dengan baik.

Pada postingan berikutnya saya akan membuat sebuah tutorial Bagaimana Cara Eksport Database Ke Ms Excel. Tunggu ya...?

Tutorial ini dapat di terapkan tidak hanya untuk database ms access saja bisa, anda bisa menerapkan pada database MS SQL Server maupun MySQL Server tinggal diganti saja koneksi nya.






Keywords:
Import Database Dari File Excel Dengan VB,Tutorial Import Database Dari File Excel Dengan VB,Cara Import Database Dari File Excel Dengan VB,Import Ekport Database, Trik Import Eksport Database,Cara Mudah Import Dan Eksport Database

Membuat Laporan Crystal Report 8.5 dengan Database MS Access 2007

Membuat Laporan Crystal Report 8.5 dengan Database MS Access 2007.  Pernahkah anda membuat lapaoran Crystal Report dengan menggunakan database ms access 2007 ke atas.? Caranya sedikit berbeda dengan membuat laporan crystal report dengan database ms access 2003 ke bawah. Jika cara membuatnya di samakan dengan cara yang memakai database ms access 2003 maka akan terjadi kegagalan dan akan muncul pesan "Library pdbbtrv.dll cannot be opened. please check it configurations"  seperti gambar berikut ini.

Tampilkan Gambar


Jika anda belum bisa membuat laporan dengan Crystal Report sebaiknya anda membaca postingan  sebelumnya yang membahas tentang membuat laporan dengan crystal report tapi menggunakan database ms access 2003 ke bawah.

Lalu bagaimanakah Membuat Laporan Crystal Report 8.5 dengan Database MS Access 2007 ? supaya tidak terjadi error. Sebenarnya ada dua cara untuk mengatasi hal tersebut. Cara pertama sebagai berikut ini :

  1. Buatlah sebuah DSN. Jika belum bisa buat DSN langkahnya seperti berikut : Buka Control Panel-Administrative Tools buka atau double klik Data Source (ODBC) maka akan muncul jendela seperti gambar berikut ini dan langkah-langkahnya
  2. Tampilkan Gambar






  3. Jika buat DSN nya sudah lalu buka Crystal Reportnya. maka akan muncul jendela seperti berikut ini.
Tampilkan Gambar

Pilih using the Report Expert lalu klik ok maka akan muncul jendela baru seperti gambar berikut

Tampilkan Gambar

pilih using the Report Expert lalu klik ok maka akan muncul jendela baru seperti gambar berikut ini

Tampilkan Gambar


kemudian klik tombol Database maka akan muncul jendela baru seperti gambar di atas lalu pilih ODBC cari nama DSN yang telah dibuat tadi disini nama DSN nya coba. lalu klik tanda plus (+) maka akan tampil tabel-tabelnya. seperti gambar berikut ini

Tampilkan Gambar

Pilih salah satu tabel yang diinginkan kemudian klik add jika sudah klik close. maka akan kembali ke jendela seperti gambar berikut ini :

Tampilkan Gambar

kemudian klik next. untuk cara atau langkah selanjutnya sama seperti jika anda membuat report dengan database ms access 2003 ke bawah. Jika belum bisa silahkan baca postingan Membuat Laporan Dengan Crystal Report Pada VB 6

Cara pertama selesai, selanjutnya cara kedua cara kedua ini tidak memakai DSN. Cara kedua langkah-langkahnya sebagai berikut ini:

Buka Crystal Reportnya-pilih using the report expert-klik database maka akan muncul jendela baru seperti gambar berikut ini

Tampilkan Gambar

Kemudian klik tanda + More Data Source lalu klik tanda + OLE DB lalu pilih Make New Connection kemudian kli Add seperti gambar di atas. Setelah klik Add maka akan muncul jendela baru seperti berikut ini.

Tampilkan Gambar

Kemudian pilihlaj Microsoft Office 12.0 Access Database Engine OLE DB seperti gambar di atas kemudian klik next maka akan tampil jendela baru seperti gambar berikut ini

Tampilkan Gambar

Kemudian isilah Data Source dengan letak database ms access nya dan nama database ms access nya seperti yang nampak pada gambar di atas. Jika sudah klik tombol Test Connection untuk mengecek berhasil tidaknya. jika berhasil maka akan muncul pesan "Test connection succeeded" seperti nampak pada gambar berikut ini

Tampilkan Gambar


Kemudian klik OK dan klik OK lagi, maka akan tampil jendela seperti gambar berikut ini

Tampilkan Gambar


Kemudian pilih tabel yang diinginkan kemudian klik add lalu close maka akan tampil jendela seperti gambar berikut ini

Tampilkan Gambar


kemudian klik next. untuk cara atau langkah selanjutnya sama seperti jika anda membuat report dengan database ms access 2003 ke bawah. Jika belum bisa silahkan baca postingan Membuat Laporan Dengan Crystal Report Pada VB 6

Demikian tutorial Membuat Laporan Crystal Report 8.5 dengan Database MS Access 2007 semoga dapat bermanfaat dan berguna.






Tags:
Membuat Laporan Crystal Report 8.5 dengan Database MS Access 2007, Tutorial Crystal report dengan ms access 2007, Mengatasi Error Laporan Crystal Report 8.5 dengan Database MS Access 2007,Cara Membuat Laporan Crystal Report 8.5 dengan Database MS Access 2007