Kiến Thức Excel Hướng dẫn tách các Sheet thành từng file Excel riêng biệt

Hướng dẫn tách các Sheet thành từng file Excel riêng biệt

Nhiều trường hợp, ta sẽ cần tách các sheet thành từng file riêng biệt. Ví dụ như kế toán cần tách các file báo cáo ra riêng khỏi file báo cáo tổng. Để thực hiện, ta sẽ có 2 cách: sử dụng thủ công (phù hợp với số lượng Sheet ít), sử dụng mã VBA (phù hợp với số lượng sheet lớn). Trong bài viết này, Kế Toán VN sẽ hướng dẫn chi tiết cả hai cách:

Cách 1: Tách thủ công Sheet thành file Excel riêng biệt

Với số lượng sheet cần tách ít, ta có thể tách thủ công như sau:

  • Bước 1: Mở file Excel chứa nhiều sheet cần tách (lưu ý: nên lưu file gốc để tránh mất dữ liệu).
  • Bước 2: Nhấp chuột trái vào tab sheet ở dưới cùng của cửa sổ Excel (ví dụ: sheet 1, sheet 2,..)
  • Bước 3: Nhấp chuột phải vào tab sheet vừa chọn => chọn Move or copy => trong cửa sổ Move or copy chọn (new book) từ danh sách thả xuống “To book” => nhấn Ok (đảm bảo không chọn ô Creat a copy nếu muốn di chuyển sheet thay vì sao chép).
  • Bước 4: Trong Workbook mới => nhấn File => Save As => chọn vị trí lưu file và chọn định dạng file và nhấn Save.

Như vậy là ta đã tiến hành xong để tách 1 sheet thành 1 file excel riêng. Nếu có nhiều sheet ta cũng sẽ tiến hành tương tự.

Dưới đây là hình ảnh minh họa các bước làm:

ảnh minh họa sử dụng move or copy sheet
nhấn chuột phải và chọn Move or Copy
tách 1 sheet thành file excel riêng
chọn New Book và move

Cách 2: Tách nhiều sheet thành file Excel với VBA

Hướng dẫn tách các Sheet thành từng file Excel riêng biệt

Với các file Excel có chứa nhiều sheet như file excel trên thì việc làm thủ công sẽ khá mất thời gian, ta có thể sử dụng VBA để tách các sheet thành file như sau:

Hướng dẫn tách các Sheet thành từng file Excel riêng biệt

Bước 1: Để tách sheet thành từng file Excel riêng biệt, đầu tiên thì các bạn cần chọn thẻ Developer trên thanh công cụ. Sau đó các bạn chọn Visual Basic tại mục Code. Hoặc các bạn có thể sử dụng tổ hợp phím tắt Alt + F11 để mở nhanh cửa sổ VBA.

Bước 2: Lúc này, cửa sổ Microsoft Visual Basic for Applications hiện ra. Các bạn chọn thẻ Insert trên thanh công cụ. Thanh cuộn hiện ra thì các bạn chọn mục Module.

Bước 3: Lúc này, hộp thoại Module hiện ra. Các bạn sao chép mã code dưới đây vào hộp thoại đó.

Sub Splitbook()
'Updateby20140612
Dim xPath As String
xPath = Application.ActiveWorkbook.Path
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For Each xWs In ThisWorkbook.Sheets
xWs.Copy
Application.ActiveWorkbook.SaveAs Filename:=xPath & "\" & xWs.Name & ".xls"
Application.ActiveWorkbook.Close False
Next
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub

Sau đó các bạn nhấn vào biểu tượng của Run ở trên thanh công cụ để chạy mã code này.

Bước 4: Sau khi chạy mã code, kết quả ta sẽ thu được là mỗi sheet đã được tách riêng ra thành một file Excel riêng biệt mà vẫn giữ nguyên dữ liệu.

Khi các bạn mở những file Excel tách riêng từng sheet đó ra thì sẽ có thông báo như hình dưới hiện lên. Các bạn chỉ cần nhấn Yes là có thể chỉnh sửa dữ liệu một cách bình thường.

Trên đây là cách để tách sheet thành file excel riêng. Ta có thể sử dụng thủ công với chức năng Move or copy hoặc sử dụng VBA để tách hàng loạt khi file Excel chứa nhiều Sheet. Chúc các bạn áp dụng thành công!