- Manual, satu persatu kita Append Tables
- VBA
- SQL
1. Cara Manual
Kita akan menambahkan file satu ke file lainnya, yaitu dengan Query Append, caranya :- Awalnya kita buat dulu table untuk menampung senua tables tersebut, caranya kita copy aja dari salah satu tabel , misalnya dari bulan JAN
- Kita klik kanan di Table JAN
- Kita hanya akan meng-Copy Structure aja, lalu kita beri nama “JAN-DES”
- Baru kita append tables ke table “JAN_DES”
- Buat Query baru, Ribbon –> Create –> Query Design
- Tambahkan Table JAN ke query (pilih JAn di kotak dialog “Show Tables” lalu OK)
- Lalu tampilkan semua field di kotak query (pilih JAN.*) lalu Klik Ribbon Design –>Append, pilih table penampung, lalu OK
- Lalu Klik Ribbon –> Design –> Run
- Klik OK
- Ulangi lagi langkah2 diatas untuk tables2 lainnya
2. Menggunakan SQL dan VBA
SQL singkatan dari Structured Query Language, yaitu suatu bahasa untuk menampilkan dan memanipulasi Database, semua aplikasi database biasanya memiliki ini karena merupakan standard dan memiliki sintaks/ tata bahasa yang samaUntuk belajar SQL kita perlu waktu, namun di Access kita bisa menggunakan Query Editor
- Coba kita buka query untuk menambah/ append tables yang tadi, kita buka dengan View Design (jangan klik 2x atau open karena akan menjalankan Append query)
- Setelah terbuka , kita bisa lihat perintah SQL-nya yaitu dengan Klik SQL View
- Ini hasilnya
- Perintah SQLnya adalah “INSERT INTO [JAN-DES] SELECT JAN.* FROM JAN;“
- Artinya insert/append semua field di table JAN ke Tabel JAN-DES
- Agar kita tidak perlu membuat 12 query kita bisa gabungkan di VBA
- Kita bikin dulu module baru di VBA, caranya:
- Pilih Ribbon –> Create –> Macro
- Pilih Module
- Akan muncul Microsoft Visual Basic Editor
- Kita ketikkan baris baris kode pada Module1 sbb:
Sub AppendData()
DoCmd.SetWarnings False
DoCmd.RunSQL “INSERT INTO [JAN-DES] SELECT JAN.* FROM JAN;”
DoCmd.RunSQL “INSERT INTO [JAN-DES] SELECT FEB.* FROM FEB;”
DoCmd.RunSQL “INSERT INTO [JAN-DES] SELECT MAR.* FROM MAR;”
DoCmd.RunSQL “INSERT INTO [JAN-DES] SELECT APR.* FROM APR;”
DoCmd.RunSQL “INSERT INTO [JAN-DES] SELECT MEI.* FROM MEI;”
DoCmd.RunSQL “INSERT INTO [JAN-DES] SELECT JUNI.* FROM JUNI;”
DoCmd.RunSQL “INSERT INTO [JAN-DES] SELECT JULI.* FROM JULI;”
DoCmd.RunSQL “INSERT INTO [JAN-DES] SELECT AGS.* FROM AGS;”
DoCmd.RunSQL “INSERT INTO [JAN-DES] SELECT SEP.* FROM SEP;”
DoCmd.RunSQL “INSERT INTO [JAN-DES] SELECT OKT.* FROM OKT;”
DoCmd.RunSQL “INSERT INTO [JAN-DES] SELECT NOV.* FROM NOV;”
DoCmd.RunSQL “INSERT INTO [JAN-DES] SELECT DES.* FROM DES;”
End Sub
- Program tadi akanmelakukan insert/append table sebanyak 12 kali/ untuk tiap bulan
- SetWarnings False untuk supaya kotak dialog peringatan atas penambahan data di tables tidak akan ditampilkan
- Lalu tempatkan kursor pada module1 diantara sub ….End sub, lalu klik Run –> Run Sub/Userform atau tombol panah dibawahnya
- Ini Hasilnya, total record= 19,337
Kita memakai salah satu statement/perintah di query yaitu UNION ALL artinya menggabungkan tabel satu dengan yang lain , karena ini ada dua belas maka kita lakukan 12 penggabungan
Caranya :
- Buat query baru, tapi jangan isi dengan tabel, jadi kotak dialog Show table langsung aja di Close
- Klik View SQL di Ribbon –> Design (otomatic akan jadi Button SQL View di ribbon design)
- Ketik sql berikut ini di windows sql editor
SELECT JAN.* FROM JAN UNION ALL
SELECT FEB.* FROM FEB UNION ALL
SELECT MAR.* FROM MAR UNION ALL
SELECT APR.* FROM APR UNION ALL
SELECT MEI.* FROM MEI UNION ALL
SELECT JUNI.* FROM JUNI UNION ALL
SELECT JULI.* FROM JULI UNION ALL
SELECT AGS.* FROM AGS UNION ALL
SELECT SEP.* FROM SEP UNION ALL
SELECT OKT.* FROM OKT UNION ALL
SELECT NOV.* FROM NOV UNION ALL
SELECT DES.* FROM DES
SELECT FEB.* FROM FEB UNION ALL
SELECT MAR.* FROM MAR UNION ALL
SELECT APR.* FROM APR UNION ALL
SELECT MEI.* FROM MEI UNION ALL
SELECT JUNI.* FROM JUNI UNION ALL
SELECT JULI.* FROM JULI UNION ALL
SELECT AGS.* FROM AGS UNION ALL
SELECT SEP.* FROM SEP UNION ALL
SELECT OKT.* FROM OKT UNION ALL
SELECT NOV.* FROM NOV UNION ALL
SELECT DES.* FROM DES
Jalankan query tadi dengan Klik View/Run di Ribbon Design
- Ini Hasilnya, total record= 19,337
- Save query tadi menjadi qryUnion
- Agar bisa menjadi table kita harus bikin query make table
- Caranya Ribbon–>Create–>Query Design, di kotak dialog isi dengan qryUnion
- lalu ubah menjadi Make Table Query
- Jalankan dengan Klik Run
- Ini hasilnya
Terima kasih infonya,
BalasHapusMau tnya.. apakah dalam membuat subform bisa combine antara tabel dan query ? jika bisa, bagaimana caranya ?
Thnkss
Tak perlu combine
BalasHapuskalo gabungin 3 tabel atau lebih gimana ya query nya? tanpa primarykey. hanya menggabungkan data yg ada di semua tabel jadi 1 aja.tiap tabel field nya sama. makasih.
BalasHapuspatokannya apa bro ? misalnya patokannya nama , brarti seret aja nama table1 ke nama table2 , record diisi dulu supaya ga bingung bro , abis itu coba di run
Hapus