Cara menggabungkan file excel atau menggabungkan file excel menjadi satu lembar dari buku kerja yang berbeda menggunakan makro excel adalah topik blog ini. Namun di blog sebelumnya, kami telah membahas cara menggabungkan data dalam satu lembar ketika data berasal dari lembar yang sama. Kami mencoba membahas teknik menggabungkan file excel dalam satu lembar ketika data disimpan dalam file terpisah di suatu lokasi
Sekarang pikirkan jika Anda membuka file satu per satu dan menggabungkan file excel secara manual, berapa lama waktu yang dibutuhkan? . Yang perlu Anda ketahui adalah cara menempelkan kode VBA dan menjalankannya
Makro VBA Excel untuk Bukan Pembuat Kode
Apakah Anda merasa VBA Macro menakutkan? . 140 halaman visual yang kaya. Unduh sekarang
Panduan untuk menggabungkan dan mengkonsolidasikan data di Excel. Ini termasuk menggabungkan data dari beberapa sel, beberapa lembar kerja, dan beberapa buku kerja menggunakan rumus, fungsi, perintah, dan makro di Excel
Di sini, saya akan menjelaskan apa yang dapat Anda lakukan di Excel dan mengarahkan Anda ke tutorial yang membantu Anda melakukan hal tersebut
Bagian
Gabungkan Data Sel
Untuk menggabungkan data dari beberapa sel, Anda melakukan apa yang disebut sel "menggabungkan", yang berarti menggabungkannya
Kami memiliki 3 tutorial hebat yang mencakup semua fitur tersebut
Gabungkan Data Lembar Kerja
Hal berikutnya yang mungkin ingin Anda lakukan adalah mengakses, menggabungkan, dan menggabungkan data antar lembar kerja di Excel
Bergantung pada data Anda dan apa yang ingin Anda lakukan, ini dapat berkisar dari sangat sederhana, hingga cukup rumit
- Tautan ke Sel di Lembar Kerja Lain Ini mengajarkan Anda cara mendapatkan data dari satu lembar kerja dan meletakkannya di lembar kerja lain. Ini memungkinkan Anda untuk mendapatkan data dari satu sel di lembar kerja lain atau dari seluruh baris, kolom, atau kumpulan data setelah Anda menyalin rumus ke bawah dan ke bawah
- Konsolidasi Data dari Beberapa Lembar Kerja di Excel Menunjukkan cara yang andal, meskipun lebih rumit, untuk menggabungkan dan menggabungkan data dari beberapa lembar kerja di Excel
Gabungkan Data Buku Kerja
Ini adalah cara yang paling sulit untuk menggabungkan atau menggabungkan data di Excel, tetapi ini benar-benar dapat menghemat banyak waktu dan tenaga jika Anda melakukannya dengan benar. Alasan sulitnya hal ini adalah, biasanya, buku kerja yang ingin Anda gabungkan tidak memiliki format dan tata letak yang persis sama
Anda dapat menggunakan kedua metode yang tercantum di atas untuk menggabungkan data lembar kerja untuk menggabungkan data antara buku kerja yang terpisah, Anda hanya perlu membuka kedua buku kerja terlebih dahulu dan kemudian melakukan langkah yang sama seperti yang Anda lakukan jika kedua lembar kerja berada di buku kerja yang sama
Satu hal yang sangat menyenangkan yang kami miliki di sini adalah makro yang menggabungkan buku kerja untuk Anda
Catatan
Menggabungkan, menggabungkan, dan menautkan data yang terpisah di Excel, baik itu di sel terpisah, lembar kerja, atau buku kerja, adalah salah satu hal terpenting yang harus Anda lakukan di Excel. Melakukannya dengan baik membutuhkan pengetahuan tentang banyak aspek program yang berbeda, tetapi ada baiknya meluangkan waktu sekarang untuk mempelajari cara melakukan ini daripada menunggu sampai menit terakhir dan menarik rambut Anda mencoba menggabungkan dua lembar kerja.
Saya mendapat telepon dari seorang teman yang ingin menggabungkan beberapa file Excel menjadi satu buku kerja Excel. Dia memiliki banyak file dalam satu folder dan dia ingin mendapatkan semua lembar kerja dari semua buku kerja menjadi satu buku kerja tunggal
Meskipun ini dapat dilakukan secara manual, ini akan memakan waktu dan rawan kesalahan
Namun, kode VBA sederhana dapat melakukannya dalam beberapa detik
Gabungkan Beberapa File Excel menjadi Satu File
Berikut adalah kode yang dapat menggabungkan beberapa buku kerja Excel dalam folder tertentu menjadi satu buku kerja Excel
Sub ConslidateWorkbooks() 'Created by Sumit Bansal from //trumpexcel.com Dim FolderPath As String Dim Filename As String Dim Sheet As Worksheet Application.ScreenUpdating = False FolderPath = Environ("userprofile") & "DesktopTest" Filename = Dir(FolderPath & "*.xls*") Do While Filename <> "" Workbooks.Open Filename:=FolderPath & 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 SubBagaimana Cara Menggunakan Kode ini?
Berikut adalah langkah-langkah untuk menggunakan kode ini
- Masukkan semua file Excel yang ingin Anda gabungkan ke dalam satu folder. Untuk keperluan tutorial ini, saya telah membuat sebuah folder bernama Test dan memiliki enam file di dalamnya (masing-masing 4 buku kerja Excel dan 1 Power Point dan Word)
- Buka buku kerja Excel baru
- Tekan ALT + F11 (atau pergi ke Pengembang -> Kode -> Visual Basic). Ini akan membuka Editor Visual Basic
- Di Editor VB, di Editor Proyek, klik kanan salah satu objek untuk buku kerja dan buka Sisipkan -> Modul. Ini akan memasukkan modul untuk buku kerja
- Klik dua kali pada modul. Ini akan membuka jendela kode di sebelah kanan
- Salin dan tempel kode di atas ke jendela kode
- Dalam kode, Anda perlu mengubah baris kode berikut. FolderPath = Environ("userprofile") & "DesktopTest"_
Di baris ini, ubah bagian dalam tanda kutip ganda (disorot dengan warna oranye) dengan lokasi folder di mana Anda memiliki file yang ingin Anda gabungkan. Pada kode yang digunakan di atas, folder tersebut ada di Desktop. Jika Anda memilikinya di lokasi lain, tentukan jalur itu di sini
- Tempatkan kursor di mana saja dalam kode dan klik tombol putar berwarna hijau di opsi Toolbar (atau tekan tombol F5)
Ini akan menjalankan kode dan semua lembar kerja dari semua file Excel di folder akan dikonsolidasikan menjadi satu buku kerja
Bagaimana Kode Ini Bekerja?
- Kode menggunakan fungsi DIR untuk mendapatkan nama file dari folder yang ditentukan
- Baris berikut memberikan nama file excel pertama ke variabel 'Filename'
Nama file = Dir(FolderPath & “*. xls*”) - Kemudian loop Do While digunakan untuk mengecek apakah semua file sudah tertutup
- Dalam loop 'Lakukan Sementara', loop 'Untuk Setiap' digunakan untuk menyalin semua lembar kerja ke buku kerja tempat kami menjalankan kode
- Di akhir Do Loop, baris kode berikut digunakan. Nama Berkas = Dir(). Menetapkan nama file Excel berikutnya ke variabel Filename dan perulangan dimulai lagi.
- Saat semua file tercakup, fungsi DIR mengembalikan string kosong, yaitu saat loop berakhir
Berikut penjelasan tentang fungsi DIR pada library MSDN
Dir mengembalikan nama file pertama yang cocok dengan pathname. Untuk mendapatkan nama file tambahan yang cocok dengan pathname, panggil Dir lagi tanpa argumen. Ketika tidak ada lagi nama file yang cocok, Dir mengembalikan string dengan panjang nol (“”)
Pernahkah Anda mencoba hal semacam ini menggunakan VBA?
Hemat Banyak Waktu Menggunakan VBA. Lihat KURSUS VBA Excel
Anda Mungkin Juga Menyukai Tutorial Excel Berikut
- Cara Menggabungkan Data dari Beberapa Buku Kerja menjadi Satu Tabel Excel (menggunakan Power Query)
- Membuat Lembar Kerja Ringkasan dengan Cepat dengan Hyperlink di Excel
- Cara Membuat dan Menggunakan Add-in Excel
- Cara Menjalankan Makro
- 20 Contoh Makro Excel yang Bermanfaat
BUKU EXCEL GRATIS
Dapatkan 51 Ebook Tips Excel untuk meningkatkan produktivitas Anda dan menyelesaikan pekerjaan lebih cepat
Nama
Surel
YA - KIRIM SAYA EBOOK
98 pemikiran tentang “Cara Menggabungkan Beberapa File Excel Menjadi Satu Buku Kerja Excel”
Yakobus
Terima kasih yang luar biasa
Lee Warren
Sangat membuat frustrasi - tidak bisa membuat benda sialan itu bekerja…
Yakobus
Saya mengalami masalah ini juga tetapi memperbaikinya sebagai berikut,
1. Simpan dokumen sebagai. xlxm
2. Pastikan Anda memiliki "/" di akhir jalur direktori AndaYakobus
Maaf. xlsm
rampok
Kode berfungsi tetapi string jalur file memerlukan semua "" di jalur file lengkap. Misalnya. C. UsersUser1DesktopExcelfiles*. xls*. Cara terbaik untuk menyelesaikan ini adalah
Saat Anda memodifikasi FolderPath = Environ(“userprofile”) & “DesktopTest” pastikan Anda menyertakan pre dan post forward slash “” ke jalur folder yang berisi lembar excel yang akan diimpor
Saat Anda melakukan debug, klik kanan pada variabel Folderpath dan Filename dan setel ke Daftar Pantauan dengan kotak Istirahat saat nilai berubah dicentang. Saat Anda menjalankan program, Anda dapat memverifikasi bahwa kedua variabel tersebut diperbarui dengan benar
DM
Terima kasih banyak, bekerja dengan sempurna
Siva
Tidak berfungsi, Ini menunjukkan debugg di Filename = Dir(FolderPath & “*. xlsx*”)
Bisakah Anda memberikan perbaikanWilliam
Agar kode ini berfungsi, beberapa dari Anda mungkin memerlukan lebih dari jalur file yang disarankan
FolderPath = Environ(“userprofile”) & “DesktopTest”
Environ(“userprofile”) hanya akan memberikan bagian pertama dari filepath. Dalam kasus saya itu. C. PenggunaWF. Ada beberapa subfolder "di sepanjang jalur" sebelum masuk ke folder yang saya gunakan untuk menggabungkan file. Gunakan contoh ini sebagai jalur ke folder yang benar
folderpath = “C. UsersWFDocumentsFolder1Folder2Folder3FolderWithFiles
Untuk cara mudah mendapatkan jalur yang benar, gunakan kode ini untuk menempatkan jalur di lembar kerja. Kemudian salin/tempel ke sub prosedur
Sub Path_FileName()
Redupkan strPath Sebagai String
strPath = Buku Kerja Aktif. Nama lengkap
Sel aktif. Nilai = strPath
Akhir SubLakukan penyesuaian ini jika perlu. Ini adalah beberapa kode yang sangat berguna
Philip
Saya mendapatkan kesalahan 52 juga
"UJI DESKTOP" = LOKASI FILE
Saya mengubah string kode ini (memindahkan tanda kurung) dari bawah dan berhasil
BERUBAH DARI
FolderPath = Environ(“userprofile”) & “DesktopTest”DIUBAH KE
FolderPath = Environ(“userprofile” & “DesktopTest”)Bruce P
Terima kasih banyak. Saya telah menemukan berbagai versi lain dari kode ini, tetapi ini adalah yang pertama yang berfungsi untuk versi Excel saya. Diperlukan untuk menggabungkan lebih dari 30 spreadsheet dan menghemat banyak waktu saya
Sumitha
Saya mendapatkan kesalahan 52 saat menjalankan kode
bilal husain
Terima kasih banyak. Itu sangat membantu. Saya seorang pedagang opsi membutuhkannya untuk menguji ulang hal-hal tersebut. Jadi terima kasih lagi. Beri tahu saya bagaimana saya bisa mengembalikannya kepada Anda
Carolyn
Terima kasih banyak untuk ini. Empat puluh spreadsheet … menjadi satu tanpa menyalin/menempel setiap lembar. Fiuh
Peggy
bagaimana saya bisa menambahkan header di lembar kerja aktif sebelum saya menjalankan kode ini?
Nitin Singla
Saya telah mengikuti instruksi dengan hati-hati tetapi saya mendapatkan kesalahan Nama file buruk 52
Michael T
Kode hebat dan berfungsi. Satu hal yang mungkin membuat orang tersandung. String Filename juga merupakan bagian dari Buku Kerja. Buka Nama File. = perintah. Siapa pun yang memiliki masalah dengan variabel Filename harus mencoba mengganti nama string menjadi sesuatu yang lain untuk menghindari masalah. Setidaknya apa yang harus saya lakukan agar ini berfungsi dengan baik untuk saya
Sumitha
Saya mengalami masalah nama file
Aditi Jain
sangat menyenangkan. bekerja luar biasa
ahmed
Nama file = Dir(FolderPath & “*. xls*”)
ahmed
Maaf tidak bekerja untuk saya, beri saya kesalahan pada file dir
RS
Tidak dapat menggabungkan beberapa file… tidak ada kesalahan yang ditampilkan, dapatkah kami mengirimkan file sampel kepada Anda-silakan bagikan id email Anda
Raphael
Bekerja untuk saya. Terima kasih banyak. menghemat banyak waktu saya untuk proyek kerja. Terima kasih banyak telah mengunggah
Simon akan
Seperti banyak orang di utas ini, ini tidak berhasil untuk saya – sarankan ini dihapus sebagai pemborosan waktu yang berharga
Jackie
Itu bekerja luar biasa. Terima kasih terima kasih terima kasih
GG
Banyak terima kasih bekerja dengan sempurna. Anda menghemat waktu saya
Nadia
Hai, bagaimana cara menggabungkan lembar kerja pertama dari beberapa buku kerja Excel dalam folder tertentu ke dalam satu buku kerja Excel?
Tracy
Saya telah menggunakan kode ini tetapi membuat banyak tab untuk lembar dengan nama yang sama seperti Nama (1);
Solusi apa pun
Mujaz
Saya mendapatkan Run-time error Bad file name or number
Saya telah menggunakan jalur “H. Seprai”
Mohon saranMya
Hapus
rj
itu tidak berhasil, ini kembali sebagai kesalahan
Nama file = Dir(FolderPath & “*. xls*”)HO CHI WAI
sudahkah anda memecahkan kasus ini?
Aditi Jain
coba letakkan "" di ujung jalur folder (perhatikan bahwa di dos, antara nama file dan direktori harus ada tanda ""
Penasaran
Saya ingin menggabungkan lembar waktu individual menjadi satu file master, tetapi t/s dilindungi. Apakah saya masih bisa memasukkan data dan menyimpannya?
Varun
Saya mendapatkan debug dalam nama file. Tolong bantu aku
Soham
Hapus Lingkungan ("profil pengguna") & dari kode Anda. Ini hanya memberi tahu VBA untuk pergi ke folder di bawah pengguna Anda. Tetapi jika Anda sudah memiliki sesuatu seperti “C. UsersVarunDocuments” di jalur folder, ini akan membuang kesalahan yang Anda dapatkan
Saud khan
Bagus sekali
Apakah mungkin memberi nama sheet sesuai dengan nama filenya?
Varun
Hai, saya mendapatkan debug di Filename
Bisakah kamu membantuku ?
Hritik
Hai, saya punya banyak buku kerja dan saya ingin menggabungkan setiap lembar kedua dari buku kerja menjadi satu
krunal
Terima kasih atas tip ini Sumi…………
Tapi itu membuat banyak sub lembar dari banyak file .. apa yang harus dilakukan jika kita membutuhkan semua banyak file menjadi hanya satu sub lembar dan saya juga ingin salinan data harus berurutan
Priti
Tidak bekerja untuk saya. Saya mengikuti semua langkah yang disebutkan di atas
shri
hanya kantor WPS
shri
maaf saya cuma mau bilang. Gunakan Kantor WPS
Aron
kesalahan 1004
metode 'salinan' objek '_lembar kerja' gagalDebug =
Lembaran. Salin Setelah. = Buku Kerja Ini. Lembar(1)
Jahan
Masalah yang sama dengan saya
Raza
tidak bekerja pengkodean ini,
kesalahan pada
Nama file = Dir(FolderPath & “*. xls*”)
tolong selesaikan masalah iniVarun
Saya mendapatkan kesalahan yang sama
Konark Desai
Saya menggunakan " " dan memasuki jalur folder tempat file tersebut berada di dalam kutipan dan itu berhasil untuk saya
Rohiet Kumar
Hai, saya butuh bantuan dalam mengembangkan alat kepunahan. Dimana 80 Persen bisa dilakukan melalui rumus. Sedikit saya butuh bantuan untuk hal-hal yang tersisa. Akan menghargai bantuan Anda
Yaniv
tidak bekerja 🙂
membutuhkan dukungan yang cerdasRohiet Kumar
Saya membuat alat estimasi. Metode pertama berhasil, tetapi itu tidak dinamis
Saya ingin daftar disegarkan jika file baru ditambahkan ke folder
lina
Terima kasih banyak. Menghemat banyak waktu
tom
Super
Menghemat banyak waktuTarun
hai, bisakah saya memperbarui lembar log harian / lembar penggunaan bahan, lembar gudang, dan menggabungkannya menjadi 1 untuk KPI?
NADER HAERI
Halo Sumut
Itu tidak bekerja untuk saya setelah memeriksa F5 saya mendapat ERE "NAMA FILE BURUK"
Seperti yang saya lihat, jumlah orang di sini memiliki ERE yang sama, tolong jelaskan alasannyaChams
Bagaimana dengan menyalin lembaran berbeda dari file excel berbeda ke satu lembar dengan menambahkan data baru ke yang lama?
Tammy Davis
Terima kasih banyak untuk kode VBA ini. Penghemat waktu yang luar biasa
Prabhjeet Singh
Hai, saya harus menyalin 4 lembar dari file excel yang berbeda dalam satu excel
Nama Excel di mana saya harus menyalin data saya = RingkasanSalinan data dari excel yang tercantum di bawah ini
Excel 1= Pencadangan Log Pekerjaan CCAP ASE Los Angeles 15-11-18
Excel 2= Pencadangan Log Pekerjaan Anaheim CCAP ASE 15-11-18
Excel 3= Pencadangan Log Pekerjaan BAY-CCAP ASE Utara 15-11-18
Excel 4= Pencadangan Log Pekerjaan CCAP ASE San Diego 15-11-18Sekarang dari setiap file, saya harus menyalin hanya 1 lembar. nama lembar disebutkan di bawah ini
Excel 1 nama lembar = LA
Excel 2 nama lembar = Anaheim
Excel 1 nama lembar = SD
Excel 1 nama lembar = BayNorthTolong bantu saya harus mengirimkan laporan ke manajer saya
Keith
Saya memiliki lebih dari 2000 file untuk digabungkan. Saya melakukan uji coba 100 dan hasilnya adalah sampah
Alberto C
Apakah Anda pernah menemukan solusi?
prerna
cara menggabungkan tiga workbook dalam satu workbook dengan mudah dan cepat
Kaushik
Saya mendapatkan error menyebutkan Run time error 52. Nama atau nomor file salah. Untuk informasi Anda, saya telah menyimpan file di Desktop saya dengan nama folder sebagai Test. Tolong sarankan
Sneha
Saya mendapatkan kesalahan sebagai nama file yang buruk, dapatkah seseorang membantu saya dengan kesalahan ini, akan sangat berterima kasih
Lisa
Itu tidak berfungsi untuk saya, saya memiliki "nama atau nomor file yang buruk". apakah Anda tahu cara memperbaikinya?
umar gillani
bermanfaat
Resi Raj Gautam
sangat bermanfaat, saya sangat menyukainya
sheetz
Ketika saya menekan f5, tidak ada yang terjadi -. adakah yang bisa membantu?
Aly June
Mencoba dengan file CSV. =) akan memberi tahu Anda
Malam ini saya suarez
Saya punya pertanyaan. Misalkan saya harus menggabungkan 652 buku kerja menjadi satu. Nama filenya adalah 1. xlsx ke 652. xlsx dan saya ingin menggabungkannya dalam urutan menaik dari nama file mereka saja. Apakah kode ini akan menggabungkannya sesuai dengan nama yang diurutkan di folder atau tidak ??
sid kumar
Hai Sumit, butuh bantuan Anda dengan makro di atas
Ini berfungsi baik jika Anda ingin menggabungkan beberapa lembar dalam 1 buku kerja
Saya butuh solusi di mana langkah-langkah berikut perlu dilakukan
1. Ada sekitar 4000 karyawan dan buku kerja akan sesuai dengan kode masing-masing karyawan
2. Ada 18 folder berisi buku kerja dengan 1 lembar kerja untuk setiap karyawan. ada kemungkinan bagi seorang karyawan salah satu buku kerja tidak akan ada
3. Makro harus membuat buku kerja dengan kode emp kemudian di 18 folder harus memeriksa apakah buku kerja tersedia untuk ID karyawan dan jika ya
4. Salin dan tempel di buku kerja yang dibuat dan simpan
5. Selain itu ada 3 buku kerja secara default yang perlu ditambahkan untuk semua karyawanApa yang saya tidak tahu untuk mengedit makro di atas adalah
1. Bagaimana cara membuat loop For untuk daftar karyawan
2. Jika tidak ada buku kerja excel khusus di salah satu folder maka seharusnya tidak ada kesalahanTolong bantu. Saya juga dapat berkomunikasi dengan id email resmi Anda dan akan senang jika Anda dapat memberikan solusi secepatnya meskipun dikenakan biaya
Salam
Jon Standing
Terima kasih banyak. Akan lebih baik lagi jika itu menamai lembaran dengan nama file aslinya
Saud
Ya
PailHorse
Masih bisa digunakan. Anda perlu menempatkan "/" setelah jalur Anda jika Anda menyalinnya
Ka
Terima kasih, ini bekerja bersama dengan menghapus Environ ("userprofile") & segmen kode untuk FolderPath di mana saya dapat menggabungkan 13 file Excel satu lembar yang saya tempatkan di folder uji pada drive jaringan yang dipetakan (contoh. FolderPath = “Z. 20198 – Tes Peserta Pertemuan AUG/”
Steve
Kode ini benar-benar berfungsi untuk saya gunakan di Excel 2016 setelah beberapa percobaan
Beberapa tips untuk mereka yang kesulitan mendapatkan pesan kesalahan
1) Kode berfungsi untuk xls dan xlsx, tidak perlu mengubahnya
2) Kode HANYA berfungsi untuk lembar kerja, coba pindahkan bagan, Anda akan mendapatkan kesalahan. (ada yang tahu bagaimana untuk bergerak bersama-sama?)
3) Coba 1 atau 2 buku kerja terlebih dahulu untuk melihat apakah itu cocok untuk Anda atau tidakSemoga ini membantu Anda semua 🙂
Ghulam
Wow yang pertama benar-benar berhasil. )
Jiggs Casey
Ini tidak berhasil. Ya itu menggabungkan 2 buku kerja, tetapi itu menghancurkan fungsionalitas rumus dalam prosesnya. Sekarang, ini bisa jadi saya membuat beberapa pilihan buruk saat diminta saat makro sedang berjalan. Idk. Contoh. saat makro sedang berjalan, saya mendapatkan beberapa "nama 'daftar penggunaan' sudah ada. Yes to keep no to rename it something else” pesan (sub ‘gunakan daftar’ dengan berbagai nama lain). Dan mengenai formula lain yang dihancurkan, misalnya. ='TAB' sederhana. A1&” “&’TAB’. Jenis rumus A2 sekarang membengkak dengan info direktori file. Jadi terbaca seperti
=’C. UserEtcpathTAB’. A1&” “&’C. UserEtcpathTAB’. A2
Yang terakhir bisa saya perbaiki dengan menghapus info direktori file bodoh, formula demi formula. Adapun keseluruhan ya atau tidak untuk mengganti nama hal-hal yang sudah ada… saya bingungTL;DR Saya tidak tahu VBA & rumus ini tidak berfungsi dalam skenario saya
Slamat Ale
Sumit Bansal Anda Rock