Bagaimana cara menggabungkan beberapa buku kerja excel menggunakan vba?

Untuk menggabungkan beberapa buku kerja Excel, Anda perlu menggunakan beberapa kode yang memungkinkan Anda memilih file mana yang ingin Anda gabungkan atau Anda bisa merujuk ke lokasi jalur tertentu dan menggabungkan semua file Excel di buku kerja saat ini.

VBA menggabungkan beberapa buku kerja

Anda dapat menggunakan kode berikut yang menggunakan lokasi yang saya sebutkan di variabel path (folder di desktop sistem saya).

 Dim Path As String Dim Filename As String Dim Sheet As Worksheet Path = "C:UsersDellDesktopsample-data" Filename = Dir(Path & "*.xlsx") Do While Filename <> "" Workbooks.Open Filename:=Path & Filename, ReadOnly:=True For Each Sheet In ActiveWorkbook.Sheets Sheet.Copy After:=ThisWorkbook.Sheets(1) Next Sheet Workbooks(Filename).Close Filename = Dir() Loop

Langkah-langkah Menggabungkan File Excel Menggunakan VBA

  1. Buka Visual Basic Editor (pastikan untuk mengaktifkan tab Pengembang jika Anda sudah memilikinya di Ribbon).
    open the visual basic editor
  2. Setelah itu, cari buku kerja saat ini dari jendela proyek (control + r) dan masukkan modul baru ke dalamnya.
    locate the current workbook
  3. Anda akan memiliki jendela kode di modul (klik dua kali di atasnya) di mana Anda perlu menempelkan kode yang Anda miliki (sebagaimana adanya).
    code window in the module
  4. Dari sini, Anda perlu mengubah nilai variabel jalur dengan lokasi folder tempat semua file Excel yang ingin Anda gabungkan berada.
    change the value for the path variable
  5. Pada akhirnya, jalankan kode dan Anda mendapatkan semua lembar kerja di buku kerja di file saat ini.

Tautan yang berguna: Jalankan makroPerekam makroEditor Visual BasicBuku Pegangan Makro Pribadi

Kode ini membuka setiap file satu per satu dan menyalin setiap lembar kerja satu per satu dan menempelkannya ke file saat ini dengan nama yang sama. Ini adalah kode yang sama tetapi dengan layar diperbarui ke false di awal untuk menjalankan semuanya di backend.

 Dim Path As String Dim Filename As String Dim Sheet As Worksheet Application.ScreenUpdating = False Path = "C:UsersDellDesktopsample-data" Filename = Dir(Path & "*.xlsx") Do While Filename <> "" Workbooks.Open Filename:=Path & Filename, ReadOnly:=True For Each Sheet In ActiveWorkbook.Sheets Sheet.Copy After:=ThisWorkbook.Sheets(1) Next Sheet Workbooks(Filename).Close Filename = Dir() Loop Application.ScreenUpdating = True End Sub

Catatan: Jika Anda ingin mempelajari cara menggabungkan data dari beberapa buku kerja ke dalam satu tabel, pastikan untuk membaca panduan ini.

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *