Có bao giờ bạn gặp rắc rối với việc kết hợp nhiều file excel thành một file Excel, nhất là khi bạn cần kết hợp file excel chứa rất nhiều trang tính? Show Xem nhanh Kết hợp nhiều file excel thành một file excel bằng VBA:Để trở thành người lập trình chuyên nghiệp, bạn có thể sử dụng mã VBA để gộp sheet trong excel thành một file excel lớn theo các bước sau :
Sub GetSheets() Path = "C:\Users\dt\Desktop\dt kte\" Filename = Dir(Path & "*.xls") 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 End Sub Chú ý. Trong đoạn mã trên, bạn có thể thay đổi đường dẫn thành đường dẫn bạn đang sử dụng.
Chú ý. Mã VBA sẽ hợp nhất toàn bộ file excel vào một file excel lớn, nếu bạn chỉ muốn kết hợp một số file excel cụ thể trong bảng tính, mã này không hoạt động. Xem thêm: Cách chèn và chạy mã VBA trong Excel 2010-2016, hướng dẫn cho người mới bắt đầu Copy nhiều sheets Excel của nhiều files Excel vào 1 file Excel cách 2Bạn copy và chạy code sau trong 1 Standard Module của Excel VBA Link tới code để copy: MergeExcelFiles Kết hợp nhiều file excel thành một file excel bằng Move or CopyNếu bạn mới học Excel, bạn sẽ không có lựa chọn nào khác ngoài sao chép dữ liệu trong từng trang tính và dán chúng vào bảng tính mới. Sử dụng Move or Copy sẽ giúp bạn xuất hoặc sao chép nhiều trang tính trong một bảng tính nhanh chóng hơn.
Qua bài viết này chúng ta thấy việc sử dụng VBA trong Excel đem lại hiệu quả rất nhiều trong công việc đúng không nào. Không chỉ có vậy, VBA còn làm được nhiều điều thú vị hơn nữa như: giúp bạn tăng tốc trong quá trình xử lý trên excel, giúp lập các báo cáo tự động, điều khiển các chương trình khác như word, power point, outlook… giúp biến file excel của bạn trở thành 1 phần mềm chuyên nghiệp… Để có thể học VBA một cách đầy đủ, có hệ thống, bạn hãy tham gia khoá học VBA101 – VBA cơ bản dành cho người mới bắt đầu của hệ thống Học Excel Online. Hiện nay hệ thống đang có nhiều ưu đãi khi bạn đăng ký khóa học này. Chi tiết xem tại: Bạn đã từng nghĩ đến việc gộp 2 hoặc nhiều hơn 2 file excel thành 1 file duy nhất chưa? Đừng lo lắng. Dưới đây mình sẽ hướng dẫn cách kết hợp cực kỳ chuyên nghiệp bằng VBA. Gộp Nhiều File Excel Thành Một File Bằng VBA.Đầu tiên, chúng ta tạo 3 file đặt cùng nằm trên 1 folder như hình dưới: Trong thư mục bên trên chúng tôi tạo: File 1 có 5 sheet. File 2 có 2 sheet và file 3 có 1 sheet. Sau khi có file chúng ta sẽ tạo 1 file excel hoàn toàn mới . Vào Developer > Visual Basic. Xuất hiện cửa sổ Microsoft Visual Basic for applications. Nhấp vào Insert > Module và sao chép đoạn mã dưới đây vào Module: Hoặc nhấn ALT + F11 để mở cửa sổ lập trình và nhấp vào Insert > Module và sao chép đoạn mã dưới đây vào Module: Sub copy() Path = "C:\Users\HP\Desktop\Gop file excel\" Filename = Dir(Path & "*.xls*") Do While Filename <> "" Workbooks.Open Filename:=Path & Filename, ReadOnly:=True For Each Sheet In ActiveWorkbook.Sheets Sheet.Copy after:=ThisWorkbook.Sheets(1) Next Workbooks(Filename).Close Filename = Dir() Loop End Sub
Cuối cùng nhấn Run hoặc F5 để chạy mã. Tất cả trang tính sẽ được hợp nhất vào 1 file lớn duy nhất. Bạn có thể thấy là tất cả các sheet của 3 file đã được gộp vào 1 file mới tạo. Có thể thấy rằng các sheet có tên sheet 1 và sheet 1 (2) để phân biệt nó chỉ là trùng tên lúc tạo tên sheet chứ dữ liệu hoàn toàn không đổi. Tạo Shapes Để Chạy Code VBATạo 1 Shapes để chạy VBA như sau: Cuối cùng chúng ta muốn chạy Shapes vừa tạo đẹp hơn thì xoá hết các sheet chỉ để lại sheet tạo Shapes của mình. Lưu ý lưu file (book2) dưới dạng Excel Macro-Enabled Workbook. |