08/02/2018, 15:09

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file duy nhất

Hướng dẫn cách ghép nối, gộp nhiều File Excel làm một file duy nhất, ghép nối các sheet thành 1 file để tiện quản lý và nhập liệu. Công việc của một kế toán, thủ quỹ luôn phải làm việc với nhiều số liệu, đôi khi bạn cần gộp nhiều file Excel làm một cho dễ nhìn và tổng kết, nhưng nếu thực hiện thủ ...

Hướng dẫn cách ghép nối, gộp nhiều File Excel làm một file duy nhất, ghép nối các sheet thành 1 file để tiện quản lý và nhập liệu. Công việc của một kế toán, thủ quỹ luôn phải làm việc với nhiều số liệu, đôi khi bạn cần gộp nhiều file Excel làm một cho dễ nhìn và tổng kết, nhưng nếu thực hiện thủ công sẽ rất mất thời gian, chưa kể copy, paste như vậy lại dễ gây nhầm lẫn hoặc sai sót.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 7

Yeutrithuc.com sẽ hướng dẫn bạn cách ghép nối, gộp nhiều file, nhiều Sheet Excel thành 1 file duy nhất rất đơn giản bằng các thao tác và code có sẵn. Tất nhiên, giao diện của từng phiên bản Excel 2003, 2007, 2010, 2013, 2016 sẽ rất khác nhau, nên một số thao tác bạn có thể lạ lẫm. Hãy xem hướng dẫn gộp nhiều file Excel làm 1 file dưới đây của Yeutrithuc nhé.

Cách 1: Sử dụng Code VBA để ghép nối nhiều File Excel làm 1 file duy nhất


Để tiện cho việc thực hành, chúng ta thử ghép nối 2 file Excel thành 1 tệp duy nhất, trước tiên hãy sử dụng Code VBA trên các phiên bản Excel mới từ 2007 đến 2013 nhé.

Bước 1: Mở Excel rồi nhấn tổ hợp phím “ALT + F11” để mở cửa sổ VBA.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 1

Bước 2: Tại cửa sổ VBA, bạn nhấp vào Insert > chọn Module để mở cửa sổ Code > Copy phần Code ở bên dưới dán vào.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 2

Code VBA để ghép nối nhiều File Excel làm 1 file duy nhất (Từ bôi đậm trong Code là tên File)

Sub GopFileExcel()

Dim FilesToOpen

Dim x As Integer

On Error GoTo ErrHandler

Application.ScreenUpdating = False

FilesToOpen = Application.GetOpenFilename _

(FileFilter:=”Microsoft Excel Files (*.xlsx), *.xlsx”, MultiSelect:=True, Title:=”Files to Merge”)

If TypeName(FilesToOpen) = “Boolean” Then

MsgBox “No Files were selected”

GoTo ExitHandler

End If

x = 1

While x <= UBound(FilesToOpen)

Workbooks.Open Filename:=FilesToOpen(x)

Sheets().Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)

x = x + 1

Wend

ExitHandler:

Application.ScreenUpdating = True

Exit Sub

ErrHandler:

MsgBox Err.Description

Resume ExitHandler

End Sub

Bước 3: Bạn đặt tên File Code thành GopFileEcel hoặc bất kỳ tên file nào mà bạn muốn nhé.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 3

Bước 4: Tiếp đến bạn chuyển đến giao diện Excel, rồi chọn mục View > nhấp vào Marcos > View Macros để bật chế độ ghép nhiều File tự động trong Excel.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 4

Bước 5: Bạn vào cửa sổ Macro, chọn file vừa lưu là GopFileExcel > Nhấn vào ô lệnh Run để chọn các file cần gộp.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 5

Bước 6: Một cửa sổ mở ra để bạn chọn tìm các File Excel cần ghép nối. Sau khi đã nhấn chọn tất cả các file cần gộp, nhấn Open để gộp nhiều File Excel  thành 1 file duy nhất.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 6

Bước 7: Kết quả là bạn đã ghép nối nhiều File Excel thành 1 file duy nhất, ở đây là gộp 2 File Excel thành 1 File để dễ tính toán.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 7

Cách 2: Dùng đoạn Code VBA khác để ghép nối 2 hoặc nhiều File Excel làm 1 file duy nhất

Bước 1: Cho tất cả các File Excel cần ghép nối vào 1 thư mục với tên thư mục không dấu, không chứa các ký tự đặc biệt.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 8

Bước 2: Chạy File Excel đầu tiên (hoặc bất kỳ file nào). Nhấn tổ hợp phím ALT + F11 để mở cửa sổ Microsoft Visual Basic for applications. Sau đó sử dụng đoạn Code VBA sau để ghép nối file. Lưu ý phần bôi đậm là đường dẫn tới thư mục chứa các File cần ghép nối.

Sub GetSheets()

Path = “C:UserskarraDesktopBai Tap

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

Bước 3: Xin nhắc lại là phần bôi đậm ở đoạn Code trên là đường dẫn tới thư mục chứa các File Excel cần ghép nối. Từ bước này trở đi, bạn làm theo tương tự như từ bước 3 trong Cách 1 ở trên.

Cách 3: Ghép nối nhiều File Excel làm 1 theo cách thủ công Move Or Copy.

Bước 1: Cách làm này hơi lâu nhưng không cần sử dụng Code. Đầu tiên, bạn mở tất cả các File cần gộp ra cùng lúc.

Bước 2: Bạn có thể copy từ Sheet Excel này sang Sheet Excel khác, nhưng như thế hơi lâu mà Yeutrithuc.com sẽ chỉ bạn cách Copy toàn bộ Sheet từ File Excel này để nối vào 1 File khác. Nhấn chọn nhiều Sheet cùng lúc bằng cách nhấn phím Ctrl hoặc Shift. Tiếp đến nhấn chuột phải vào 1 Sheet bất kỳ > Chọn Move or Copy.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 9

Bước 3: Cửa sổ Move or Copy mở ra, bạn chọn 1 bảng tính từ mục Move Selected Sheets to book mà tất cả các file Excel khác sẽ được copy vào bảng tính này.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 10

Bước 4: Nhấn OK để đồng ý, lúc này các sheet đã được chuyển đến bảng tính đã chọn ở trên để ghép nối lại thành 1 file duy nhất.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 11

Cách 4: Dùng Code để gộp nhiều Sheet Excel làm 1 File duy nhất

Bước 1: Đầu tiên, bạn thực hiện thao tác giống bước 1 và bước 2 trong Cách 1 về ghép nối nhiều File Excel thành 1 File duy nhất.

Bước 2: Nhớ giữ nguyên Code ở Cách 1 và làm tương tự để them Code ghép nối nhiều Sheet Excel thành 1 File bằng cách chọn Insert > Module và sao chép Code bên dưới vào ô trống.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 12

Đoạn Code gộp nhiều Sheet làm 1 File:

Sub MergeSheets()

Const NHR = 1

Dim MWS As Worksheet

Dim AWS As Worksheet

Dim FAR As Long

Dim LR As Long

Set AWS = ActiveSheet

For Each MWS In ActiveWindow.SelectedSheets

If Not MWS Is AWS Then

FAR = AWS.UsedRange.Cells(AWS.UsedRange.Cells.Count).Row + 1

LR = MWS.UsedRange.Cells(MWS.UsedRange.Cells.Count).Row

MWS.Range(MWS.Rows(NHR + 1), MWS.Rows(LR)).Copy AWS.Rows(FAR)

End If

Next MWS

End Sub

Bước 3: Tiến hành đặt tên File thành MergeSheets hoặc bất kỳ tên gì bạn muốn, rồi chuyển sang phần File Excel tổng ban đầu, nhớ đừng tắt Code VBA đi nhé.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 13

Bước 4: Bạn chỉ mới tạo 1 File Excel gồm nhiều Sheet với các nội dung đã chọn, giờ để gộp các Sheet làm 1 Sheet trong File thì giữ phím Ctrl rồi nhấp vào các Sheet cần ghép nối.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 14

Bước 5: Chọn Tab Insert > Marcros > View Macros để chạy chế độ tự động trên Excel.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 15

Bước 6: Cửa sổ Macro mở ra, bạn chọn File MergeSheets đã đặt ở trên, sau đó nhấn Run để hợp nhất các Sheet lại thành một.

Cách ghép nối nhiều file Excel, nhiều Sheet Excel thành 1 file 16

Cách ghép nối nhiều File Excel thành 1 File trên Excel 2003

Do giao diện của phiên bản Excel 2003 khác nhiều so với các phiên bản khác, nên các bạn chắc chắn sẽ có chút bỡ ngỡ. Chúng ta vẫn sử dụng Code như ở trên, nhưng cần thực hiện thao tác sau để vào Macro: Vào Menu Tools > Macro > Sử dụng Code ở trên để nối nhiều File hoặc gộp Sheet.

Trên đây là cách ghép nối, gộp nhiều File Excel thành một file Excel duy nhất cũng như gộp nhiều Sheet làm 1 đơn giản. Trong quá trình làm việc bạn chắc chắn sẽ cần kết nối dữ liệu, đưa các số liệu về cùng một mối, như các con số theo ngày, tháng, năm giờ muốn tổng hợp lại rất khó nếu cứ copy, Paste thủ công. Phương pháp ở trên sẽ giúp bạn dễ dàng ghép nối từ 2 file Excel trở lên thành 1 File cực nhanh.


0