Makro untuk menarik data dari akses ke excel

Gulir daftar ekstensif hingga Anda menemukan Microsoft Office xx. 0 Objek Mesin Basis Data (di mana xx adalah 14. 0 di atas)

Jika Anda menggunakan versi kurang dari 2007, Anda perlu memperhatikan sekarang. Untuk versi sebelumnya pilih Microsoft DAO XX Object Library. Jangan memilih keduanya akan ada konflik dan proses Anda mungkin tidak akan berjalan

Sekarang setelah Anda terhubung ke Access, berikut ini adalah Coding yang akan membuat prosedur Anda terbang


Opsi Eksplisit
Sub ImpAccess() 'VBA Excel untuk mengimpor kueri Access

Redupkan MyDatabase Sebagai DAO. Basis data
Redupkan qryDef Sebagai DAO. QueryDef
Redupkan MyRecordset Sebagai DAO. Kumpulan rekaman

Atur MyDatabase=OpenDatabase("C. \Test\TestDb. accdb") 'Nama DB
Atur qryDef=DatabaseSaya. QueryDefs("qryVanilla") 'Nama Kueri
Tetapkan MyRecordset=qryDef. Buka Lembar Set Rekaman1. Rentang ("A11"). CopyFromRecordset MyRecordset

Untuk i=1 Ke MyRecordset. Bidang. Hitung 'Judul untuk dikembalikan

Lembar1. Sel (10, i). Nilai = MyRecordset. Bidang (i - 1). Nama

Selanjutnya saya

Akhir Sub


Baris dengan Ungu adalah yang harus diubah saat menghubungkan ke database Anda sendiri. Contoh di atas akan mengembalikan data dan heading. Jika saya menjalankan prosedur ini, saya akan meletakkan header di file karena ini akan menjadi sesuatu yang Anda ketahui sebelumnya yang berarti Anda tidak perlu mengembalikan header

Saya akan menyertakan file Excel dan Access. Untuk melihat bagaimana mereka berjalan bersama, cukup simpan Database ke Direktori yang disebut "C. \Test\" dan pastikan Anda memanggil file TestDb. accdb. Itu adalah versi Access yang lebih baru. Ubah ekstensi file agar sesuai dengan versi yang lebih lama jika perlu

Sebagian besar contoh di internet tidak begitu mudah digunakan untuk pengguna biasa seperti saya. Saya telah mencoba mengubahnya di halaman web ini. Kami menggunakan makro kecil yang tidak terlalu sulit untuk digunakan/diubah yang memanggil satu makro besar bernama GetDataFromAccess. Contoh dibuat pada tahun 2006 tetapi masih berfungsi di Excel 2013

Anda dapat mengunduh file zip di bagian bawah halaman ini dengan dua buku kerja Excel dan OrderDatabase. mdb untuk menguji contoh

Dalam satu buku kerja Anda dapat menemukan semua kode dari halaman ini dan di halaman lain sangat mudah mendapatkan info yang Anda inginkan karena Anda dapat menyimpan kriteria (100 atau lebih) dan dapat menggunakan Data>Validation cell untuk memilih kriteria Anda. Catatan. buku kerja dan OrderDatabase. mdb harus berada di folder yang sama

Di OrderDatabase. mdb ada tabel bernama Pesanan dengan bidang-bidang berikut

Jumlah order
Tanggal pemesanan
Tanggal Wajib
Tanggal pengiriman
Kargo
Kapal melalui
Negara Kapal
Nama Kapal
Alamat Kapal
Kota Kapal
Wilayah Kapal
Kode Pos Kapal

Di bawah ini Anda menemukan beberapa contoh makro yang dapat Anda gunakan untuk mengambil hanya rekaman yang Anda inginkan

Garis pertama. Jalur/nama file Access, Nama tabel
Baris kedua-kedelapan. Anda dapat mengisi tujuh kriteria, dan jika Anda tidak mengisi kriteria apa pun, itu mengembalikan semua catatan
Tiga kriteria pertama hanya untuk bidang Teks
Yang keempat dan kelima adalah untuk bidang angka
Keenam dan ketujuh adalah untuk bidang tanggal
Jalur sembilan. Lembar/rentang tujuan
Baris sepuluh. Bidang mana ( * = semua), Salin nama bidang, kosongkan semua sel pada lembar Tujuan terlebih dahulu

Catatan. Jika Anda menggunakan kriteria 4-7 (bidang angka atau Tanggal), Anda dapat mengubah >, =,