Hướng dẫn cách tách sheet trong Excel thành các file riêng bằng VBA

Hướng Dẫn Tách Sheet Trong Excel Thành File Riêng Lẻ Bằng VBA

Nếu bạn những file Excel có chứa quá nhiều sheet, thường xuyên gặp phải tình trạng quá tải, giải pháp tách sheet trong Excel thành các file nhỏ riêng lẻ là giải pháp tối ưu nhất. Bài viết này Zik.vn sẽ giới thiệu và hướng dẫn cách thực hiện đơn giản và nhanh chóng bằng lệnh VBA Excel. Chúng ta bắt đầu thôi!

Xem thêm : Hướng dẫn gộp nhiều sheet thành 1 trong Excel bằng VBA
Thủ thuật Excel – Trở thành phù thủy Excel trong 12 giờ

Hướng dẫn tách sheet trong Excel thành file riêng lẻ

Bạn đang nhức đầu khi làm việc với những file Excel tổng hợp với số lượng sheet lớn? Bạn muốn tách sheet trong Excel thành file riêng lẻ? Vì Excel không được cài sẵn tính năng tách các file nhỏ từ một file lớn hơn. Sự thật là bạn hoàn toàn có thể tách sheet trong Excel bằng cách thủ công. Phương pháp này đang được áp dụng rộng rãi đối với nhiều dạng dữ liệu hiện nay.

Thực tế, giải pháp này tốn rất nhiều thời hạn và dễ xảy ra lỗi vì phải tách lần lượt những nội dung trong file lớn thành những file riêng không liên quan gì đến nhau. Để khắc phục điều này, mình xin trình làng đến bạn cách sử dụng lệnh VBA Excel để tách sheet trong Excel thành file riêng không liên quan gì đến nhau một cách hiệu suất cao nhất .
Phương pháp tách sheet trong Excel dưới đây chắc như đinh giúp bạn vô hiệu được những lỗi từ thao tác bằng tay thủ công, tiết kiệm ngân sách và chi phí thời hạn hiệu suất cao. Cùng mình khám phá ngay thôi !

Cách tách sheet trong Excel thành file riêng lẻ bằng VBA

Để hiểu rõ hơn tất cả chúng ta cùng triển khai những bước tách sheet trong Excel bằng lệnh VBA. Ví dụ tất cả chúng ta có một file tổng hợp tài liệu, số liệu từng tháng được biểu lộ trải qua những sheet như hình :

Cách tách sheet trong Excel thành file riêng lẻ

Hiện tại, tất cả chúng ta cần sử dụng tài liệu của một tháng tương ứng với 1 sheet trong file tổng hợp tài liệu để làm báo cáo giải trình .
Bạn sẽ gặp yếu tố khi thao tác với file tổng hợp tài liệu này, vì Excel hoàn toàn có thể gặp sự cố và ngừng hoạt động giải trí bất kỳ khi nào. Excel khởi đầu có những tín hiệu giảm vận tốc và hiệu năng thao tác kém hơn do hội lương tài liệu ngày càng lớn. Vì vậy giải pháp tách sheet trong Excel là cách duy nhất hoàn toàn có thể giúp bạn lúc này .
Trước khi thực thi tách sheet trong Excel thành file riêng bằng VBA, bạn triển khai những bước chuẩn bị sẵn sàng như sau :

  • Bước 1: Tạo một thư mục mới để lưu tổng thể những file Excel được tách riêng không liên quan gì đến nhau .
  • Bước 2:Lưu file Excel tổng hợp bắt đầu trong thư mục vừa tạo mới .

Khi hoàn thành xong những bước trên, tất cả chúng ta mở màn vận dụng lệnh tách sheet trong Excel bằng lệnh VBA dưới đây :
‘ Tach sheet trong Excel thanh file rieng le
Sub TachfileExcel ( )
Dim FPath As String
FPath = Application. ActiveWorkbook. Path
Application. ScreenUpdating = False
Application. DisplayAlerts = False
For Each ws In This Workbook. Sheets
ws. Copy
Application. ActiveWorkbook. SaveAs Filename : = FPath và “ ” và ws. Name và “. xlsx ”
Application. ActiveWorkbook. Close False
Next
Application. DisplayAlerts = True
Application. ScreenUpdating = True
End Sub
Đối với lệnh VBA Excel này sẽ tự động hóa xác lập vị trí thư mục lưu file Excel tổng hợp hiện tại. Vì vậy, điều quan trọng trước khi chạy lệnh là cần lưu file trong thư mục .
Để giúp bạn hiểu rõ hơn về phương pháp hoạt động giải trí và cách tách sheet trong Excel bằng lệnh VBA, dưới đây mình sẽ lý giải kỹ hơn :
Lệnh VBA Excel là cách sử dụng vòng lặp For .. Next đơn thuần lướt qua lần lượt những sheet trong file tổng hợp khởi đầu. Tạo ra những bản sao từ những sheet này và lưu lại chúng trong thư mục chứa file khởi đầu .
Xem thêm : Cách sử dụng vòng lặp For .. Next trong lệnh VBA Excel
Để triển khai lệnh VBA Excel bạn cần triển khai theo những bước sau đây :

  • Bước 1:Vào chọn thẻDeveloper –> chọnnhóm Code –> chọnVisual Basic.
  • Bước 2: Cửa sổMicrosoft Visual Basic for Applicationssẽ xuất hiện. Click chuột phải một sheet Excel cần tách -> chọnInsert –> chọnModule .

Cách tách sheet trong Excel thành file riêng lẻ 1

  • Bước 3:Copy đoạn code VBA Excel trên dán tại module mới tạo \

Cách tách sheet trong Excel thành file riêng lẻ 2

  • Bước 4:Nhấn chuột vào bất kể trong đoạn mã VBA Excel vừa copy. Nhấn chọn hình tượng nút play màu xanh trên thanh công cụ .

Cách tách sheet trong Excel thành file riêng lẻ 3

  • Bước 5:Cửa sổMacrosOpen. Chọn macro nameTachfileExcelvà nhấn chọnRun.

Cách tách sheet trong Excel thành file riêng lẻ 4

Sau khi Excel chạy macro xong thì tổng thể hiệu quả sẽ Open khi bạn mở thư mục đã lưu file

Cách tách sheet trong Excel thành file riêng lẻ 5

Như hình ảnh trên, bạn hoàn toàn có thể thấy hàng loạt sheet trong file tổng hợp khởi đầu được tách thành những file Excel riêng không liên quan gì đến nhau, tên file lưu chính là tên những sheet. Với lệnh VBA trong vài giây, bạn trọn vẹn hoàn toàn có thể tách sheet trong Excel một cách chuyên nghiệp, nhanh gọn và không xảy ra lỗi như giải pháp bằng tay thủ công .
Một quan tâm quan trọng, vì khi sử dụng lệnh VBA Excel so với file tổng hợp nên bạn cần lưu file này bằng đuôi. xlsm hoặc. xlsx. Đây là những định dạng được cho phép macro chạy, bảo vệ khi mỗi lần mở file hàng loạt macro sẽ được lưu lại và hoạt động giải trí thông thường .
Xem thêm : Hướng dẫn thiết lập được cho phép luôn bật macro trong Excel

Cách tách sheet trong Excel thành file PDF riêng lẻ bằng VBA

Trường hợp bạn muốn tách sheet trong Excel thành những file riêng không liên quan gì đến nhau dưới định dạng PDF thay vì những file Excel thường thì. Lệnh VBA Excel chuẩn bị sẵn sàng giúp bạn hoàn thành xong tốt điều này. Tương tự chiêu thức tất cả chúng ta triển khai ở trên, đơn cử như sau :
Trước khi triển khai tách sheet trong Excel thành file PDF riêng không liên quan gì đến nhau bằng VBA, bạn hãy bảo vệ đã thực thi những bước sẵn sàng chuẩn bị quan trọng dưới đây :

  • Bước 1: Tạo một thư mục mới để lưu toàn bộ những file Excel sau khi tách riêng không liên quan gì đến nhau .
  • Bước 2:Lưu file Excel tổng hợp bắt đầu trong thư mục vừa tạo mới .

Sau khi hoàn thành các bước trên. Để tách sheet trong Excel thành các file PDF riêng lẻ bằng cách sử dụng lệnh VBA Excel dưới đây:

‘ Tach sheet trong Excel thanh file rieng le
Sub TachfilePDF ( )
Dim FPath As String
FPath = Application. ActiveWorkbook. Path
Application. ScreenUpdating = False
Application. DisplayAlerts = False
For Each ws In This Workbook. Sheets
ws. Copy
Application. ActiveSheet. ExportAsFixedFormat Type : = xlTypePDF, Filename : = FPath và “ ” và ws. Name và “. xlsx ”
Application. ActiveWorkbook. Close False
Next
Application. DisplayAlerts = True
Application. ScreenUpdating = True
End Sub
Cũng tương tự như như cách hoạt động giải trí của lệnh VBA Excel tất cả chúng ta đã tìm hiểu và khám phá trong giải pháp tách sheet trong Excel ở phần trên. Cách thức hoạt động giải trí tách sheet trong Excel thành file PDF được thực thi như sau :

Lệnh sẽ xác định vị trí folder lưu trữ file Excel ban đầu. Sau đó, sử dụng vòng lặp For.. Next để lướt qua các sheet trong file ban đầu. Từ đó tạo ra các bản PDF từ các sheet và lưu chúng trong folder chứa file tổng hợp ban đầu.

Để triển khai tách sheet trong Excel thành file PDF bằng lệnh VBA, những bước triển khai như sau :

  • Bước 1:Vào chọn thẻDeveloper –> chọnnhóm Code –> chọnVisual Basic.
  • Bước 2: Cửa sổMicrosoft Visual Basic for Applicationssẽ xuất hiện. Click chuột phải một sheet Excel cần tách -> chọnInsert –> chọnModule .
  • Bước 3:Copy đoạn code VBA Excel trên dán tại module mới tạo
  • Bước 4:Nhấn chuột vào bất kể trong đoạn mã VBA Excel vừa copy. Nhấn chọn hình tượng nút play màu xanh trên thanh công cụ .
  • Bước 5:Cửa sổMacrosOpen. Chọn macro nameTachfileExcelvà nhấn chọnRun.

Các bước triển khai trên trọn vẹn giống với chiêu thức đã thực thi ở phần trước. Bạn hoàn toàn có thể kéo lên trên để xem hướng dẫn có hình ảnh minh họa để thực thi đúng nhé .
Xem thêm : Hướng dẫn triển khai tự tạo hàm UDF trong Excel bằng lệnh VBA

Cách tách sheet trong Excel chứa chuỗi ký tự giống nhau trong tên thành file Excel riêng lẻ

Trong trường hợp bạn muốn tách những tên sheet trong Excel chứa chuỗi ký tự giống nhau thành những file nhỏ riêng không liên quan gì đến nhau. Giải pháp VBA Excel trọn vẹn hoàn toàn có thể giúp bạn triển khai điều này. Thật giật mình đúng không nào ? Chúng ta cùng tìm hiểu và khám phá kỹ nhé ?
Ví dụ tất cả chúng ta có một file Excel tổng hợp tài liệu trong nhiều năm liền và những sheet được đặt tên gồm nội dung kèm theo năm. Và bạn cần tách những sheet trong Excel có chứa chuỗi ký tự “ 2020 ” thành những file Excel riêng không liên quan gì đến nhau .
Tương tự như chiêu thức tất cả chúng ta đã triển khai ở trên, trước khi vận dụng cách tách sheet trong Excel thành file, bạn cần thực thi những bước sẵn sàng chuẩn bị sau đây :

  • Bước 1: Tạo một thư mục mới để lưu tổng thể những file Excel sau khi tách riêng không liên quan gì đến nhau .
  • Bước 2:Lưu file Excel tổng hợp bắt đầu trong thư mục vừa tạo mới .

Thông thường để tách sheet, bạn cần phải kiểm tra tên của từng sheet. Tròn khác sheet có chứa chuỗi ký tự “ 2020 ” để triển khai tách sheet trong file tổng hợp Excel. Bây giờ bạn sẽ không cần tự mình làm, vì nhờ lệnh VBA Excel dưới đây sẽ giúp bạn triển khai trọn vẹn những bước đó :
‘ Tach sheet trong Excel thanh file rieng le
Sub Tachfile2020 ( )
Dim FPath As String
Dim TexttoFind As String
TexttoFind = “ 2020 ”
FPath = Application. ActiveWorkbook. Path
Application. ScreenUpdating = False
Application. DisplayAlerts = False
For Each ws In This Workbook. Sheets
If InStr ( 1, ws. Name, TexttoFind, vbBinaryCompare ) < > 0 Then
ws. Copy
Application. ActiveWorkbook. SaveAs Filename : = FPath và “ ” và ws. Name và “. xlsx ”
Application. ActiveWorkbook. Close False
End If
Next
Application. DisplayAlerts = True
Application. ScreenUpdating = True
End Sub
Trong lệnh VBA Excel này, mình có dùng biến TexttoFind có gán giá trị ứng với chuỗi ký tự cần xác lập muốn lọc từ những tên sheet. Tương tự khi bạn muốn tìm một chuỗi ký tự khác, hãy đổi khác giá trị này và đặt trong dấu nháy kép “ ” .
Khi cấu trúc vòng lặp For .. Next trong lệnh VBA lướt qua toàn bộ những sheet trong file Excel tổng hợp bắt đầu. Đồng thời hàm INSTR Sẽ kiểm tra lần lượt những sheet có chứa dãy ký tự “ 2020 ” hay không. Nếu tác dụng không tìm thấy, hàm này sẽ trả về số 0. Nếu hiệu quả tìm thấy, sẽ trả về số thứ tự hàm tìm thấy chuỗi giá trị đó .
Phương thức hoạt động giải trí của lệnh VBA Excel này dựa trên cơ sở điều kiện kèm theo Nếu … thì ( If … Then ). Tức là nếu tên của sheet có chứa chuỗi ký tự “ 2020 ” thì sẽ được lưu thành một file Excel riêng. Nếu như tên của sheet không chứa chuỗi ký tự “ 2020 ” thì sẽ không có điều gì xảy ra .
Xem thêm : Thực hiện viết cấu trúc IF THEN ELSE trong VBA Excel
Trên đây là phương pháp hoạt động giải trí của lệnh VBA. Để thực thi tách sheet trong Excel chứa chuỗi ký tự giống nhau trong tên thành file Excel riêng không liên quan gì đến nhau, thực thi những bước như sau :

  • Bước 1:Vào chọn thẻDeveloper –> chọnnhóm Code –> chọnVisual Basic.
  • Bước 2: Cửa sổMicrosoft Visual Basic for Applicationssẽ xuất hiện. Click chuột phải một sheet Excel cần tách -> chọnInsert –> chọnModule .
  • Bước 3:Copy đoạn code VBA Excel trên dán tại module mới tạo
  • Bước 4:Nhấn chuột vào bất kể trong đoạn mã VBA Excel vừa copy. Nhấn chọn hình tượng nút play màu xanh trên thanh công cụ .
  • Bước 5:Cửa sổMacrosOpen. Chọn macro nameTachfileExcelvà nhấn chọnRun.

Sau khi hoàn thành xong những bước triển khai trên, hiệu quả sẽ Open khi bạn mở thư mục đã lưu. Tất cả những sheet có chứa chuỗi ký tự “ 2020 ” trong tên sẽ được tách thành những file Excel riêng không liên quan gì đến nhau. Thông qua ví dụ trên, bạn hoàn toàn có thể vận dụng để tách những sheet trong Excel thành riêng không liên quan gì đến nhau với những giá trị khác theo nhu yếu .

Tổng kết

Thông qua bài viết này, mình đã cùng những bạn học cách để tách sheet trong Excel thành file riêng không liên quan gì đến nhau, với nhiều định dạng trang khác nhau. Một chú ý quan tâm nhỏ mình muốn san sẻ với những bạn : Để tránh rủi ro tiềm ẩn mất tài liệu khi triển khai sai hoặc Excel nhưng hoạt động giải trí bất thần, bạn nên lưu Một file dự trữ trước khi triển khai tách sheet trong Excel .

Hi vọng qua bài viết này giúp các bạn nhanh chóng trở thành bậc thầy Excel, tách sheet trong Excel theo yêu cầu công việc của mình. Để biết nhiều hơn về công dụng của VBA Excel, mời bạn tham khảo các bài viết liên quan trên Zik.vn. Chúc các bạn có một trải nghiệm tuyệt vời cùng với VBA Excel.

Zik. vn xin chân thành cảm ơn bạn đọc và chúc những bạn thành công xuất sắc !