Cách Tách 1 Sheet Trong Excel

Mặc định đã không tồn tại biện pháp làm sao nhằm bạn tách riêng các sheets vào Excel thành các tệp tin riêng lẻ. Tuy nhiên sau đây justisofa.com vẫn Hướng dẫn giải pháp bóc tách từng sheets vào file Excel thành các tập tin riêng trải qua mã VBA cực kỳ đơn giản dễ dàng. 

Tách từng sheets thành những tập tin Excel riêng rẽ biệt

Ví dụ các bạn tất cả một tệp tin Excel nlỗi được hiển thị bên dưới, tiếng muốn tách mỗi một sheets thành một tệp tin Excel đơn lẻ cho mỗi mon. 

*

Để triển khai, chúng ta cũng có thể sử dụng đoạn mã VBA mặt dưới:

"Code Created by justisofa.comSub SplitEachWorksheet()Dlặng FPath As StringFPath = Application.ActiveWorkbook.PathApplication.ScreenUpdating = FalseApplication.DisplayAlerts = FalseFor Each ws In ThisWorkbook.Sheets ws.Copy Application.ActiveWorkbook.SaveAs Filename:=FPath và "" & ws.Name & ".xlsx" Application.ActiveWorkbook.Cđại bại FalseNextApplication.DisplayAlerts = TrueApplication.ScreenUpdating = TrueEnd Sub

Có một số điều bạn cần bảo đảm an toàn trước khi sử dụng mã VBA ở trên:

- Tạo một tlỗi mục chỗ mà bạn muốn xuất toàn bộ những sheets sau thời điểm tách bóc ra.

Bạn đang xem: Cách tách 1 sheet trong excel

- Lưu tập tin Excel bao gồm (gồm tất cả những sheets cơ mà bạn có nhu cầu bóc tách riêng rẽ các sheets) vào thư mục này.

khi bạn đã dứt việc này, sau đó chúng ta có thể cnhát mã VBA làm việc bên trên vào tập tin cùng chạy mã.

Đoạn mã trên được viết theo cách mà lại nó đang lựa chọn địa điểm của thư mục bằng cách sử dụng băng thông của tập tin (trong những số đó mã được chạy). Đây là nguyên nhân tại vì sao điều đặc trưng là yêu cầu lưu tập tin trong tlỗi mục trước cùng tiếp đến áp dụng mã này.

Mã VBA chuyển động như vậy nào?

Đoạn mã trên áp dụng một vòng lặp For Next dễ dàng và đơn giản trải qua từng sheets, chế tạo một bản sao của sheets vào file Excel, rồi giữ tệp tin Excel này trong thư mục được chỉ định.

Dưới đó là công việc nhằm chèn mã VBA này vào file Excel (công việc này vẫn tương đương nhau đối với cả các phương thức khác được áp dụng trong bài bác này):

Cyếu mã này ngơi nghỉ đâu?

Dưới đó là công việc nhằm cnhát mã trong Visual Basic Editor:

Bước 1: Trong tệp tin Excel đề xuất ckém mã, truy vấn vào tab Developer.

*

Cách 2: Trong đội Code, bnóng nút Visual Basic ở góc trên cùng phía trái. Thao tác này đã mnghỉ ngơi trình biên soạn thảo VB (chúng ta cũng có thể thực hiện tổ hợp phím tắt - ALT + F11).

*

Cách 3: Trong cửa sổ VB Editor hiển thị, kích con chuột yêu cầu vào bất kỳ đối tượng nào của sổ thao tác làm việc nhưng mà bạn đang thao tác.

*

Bước 4: Di bé trỏ qua tùy lựa chọn Insert.

Bước 5: Chọn tùy lựa chọn Module. Thao tác này sẽ chèn một module mới

*

Bước 6: Bnóng đúp vào đối tượng module mới sẽ mở cửa sổ mã đến module này.

Bước 7: Sao chnghiền mã VBA được cung cấp sinh sống trên cùng ốp lại cửa sổ mã module này.

*

Bước 8: Chọn ngẫu nhiên mẫu như thế nào trong mã và nhấp chuột nút ít Play màu xanh lá cây bên trên tkhô giòn phương tiện nhằm chạy mã macro VBA.

Xem thêm: Hướng Dẫn Cách Xem Ai Vào Facebook Nhiều Nhất (Update 2021), Cách Xem Ai Vừa Vào Facebook Của Mình

*

Các bước trên vẫn ngay lập tức lập tức phân tách các sheets thành các tập tin Excel riêng lẻ với giữ bọn chúng. Chỉ mất một giây nếu bạn có ít sheets, tuy nhiên vẫn mất một chút ít thời gian giả dụ file Excel của người sử dụng có rất nhiều sheets đơn lẻ.

Tên của từng tập tin Excel được lưu lại vẫn tương đương cùng với thương hiệu sheets cơ mà nó tất cả vào tập tin bao gồm.

*

Vì đang đặt mã VBA trong tệp tin Excel buộc phải bạn cần lưu lại mã này cùng với định dạng .XLSM (là định dạng cung ứng macro). Như vậy đang đảm bảo macro được lưu giữ và chuyển động khi chúng ta mlàm việc tập tin này sau đây.

Lưu ý: Quý khách hàng có thể sử dụng các dòng mã Application.ScreenUpdating = False cùng Application.DisplayAlerts = False nếu như muốn phần đa trang bị xẩy ra vào nền mà lại không có thông báo hay bất kỳ điều gì sẽ xảy ra bên trên màn hình của file Excel đang được cách xử lý.

Cách cực tốt, chúng ta nên tạo nên một bạn dạng sao lưu giữ của tệp tin Excel gốc (có những sheets cơ mà bạn muốn tách). Điều này đã đảm bảo bạn vẫn tồn tại tài liệu vào ngôi trường vừa lòng có bất kỳ sự cầm nào xẩy ra. 

Tách từng sheets cùng giữ bên dưới dạng PDF riêng biệt

Trong trường hòa hợp bạn có nhu cầu bóc những sheets vào một file Excel cùng lưu lại dưới định hình tập tin PDF gắng vì chưng tệp Excel, bạn có thể áp dụng mã bên dưới đây:

"Code Created by justisofa.comSub SplitEachWorksheet()Dyên ổn FPath As StringFPath = Application.ActiveWorkbook.PathApplication.ScreenUpdating = FalseApplication.DisplayAlerts = FalseFor Each ws In ThisWorkbook.Sheets ws.Copy Application.ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=FPath & "" & ws.Name và ".xlsx" Application.ActiveWorkbook.Cthua trận FalseNextApplication.DisplayAlerts = TrueApplication.ScreenUpdating = TrueEnd Sub

Những điều bạn cần đảm bảo an toàn trước lúc áp dụng mã này:

- Tạo một tlỗi mục khu vực nhưng bạn có nhu cầu xuất tất cả những sheets sau thời điểm tách bóc ra.

- Lưu tập tin Excel chính (có toàn bộ các sheets nhưng bạn muốn bóc tách riêng biệt những sheets) trong thỏng mục này.

- Đoạn mã trên sẽ chia từng sheets trong tệp tin Excel nơi bắt đầu với lưu bên dưới dạng PDF vào cùng thỏng mục khu vực chúng ta sẽ file Excel ban đầu.

Chỉ bóc tách rất nhiều sheets tất cả chứa từ/cụm từ bỏ thành các file Excel riêng 

Trong trường phù hợp bạn có nhiều sheets trong một file Excel và chỉ còn ao ước bóc đông đảo sheets có văn uống bạn dạng cụ thể trong những số đó, bạn có thể thực hiện điều này.

Ví dụ: quý khách tất cả một file Excel trong những số ấy gồm dữ liệu trong không ít năm với mỗi sheets trong file tất cả số năm làm cho chi phí tố. 

Bây giờ đồng hồ, đưa sử bạn muốn tách bóc tất cả những sheets của năm 20trăng tròn và lưu thành các tập tin Excel đơn nhất. Để tiến hành câu hỏi này, bạn cần phải kiểm tra bằng phương pháp làm sao kia thương hiệu của từng sheets và chỉ phần đa sheets có số 2020 bắt đầu được tách cùng lưu lại, những sheets còn sót lại sẽ không thay đổi.

Như vậy hoàn toàn có thể được thực hiện bằng phương pháp áp dụng mã macro VBA sau :

"Code Created by justisofa.comSub SplitEachWorksheet()Dyên ổn FPath As StringDlặng TexttoFind As StringTexttoFind = "2020"FPath = Application.ActiveWorkbook.PathApplication.ScreenUpdating = FalseApplication.DisplayAlerts = FalseFor Each ws In ThisWorkbook.Sheets If InStr(1, ws.Name, TexttoFind, vbBinaryCompare) 0 Then ws.Copy Application.ActiveWorkbook.SaveAs Filename:=FPath & "" & ws.Name và ".xlsx" Application.ActiveWorkbook.Cđại bại False End IfNextApplication.DisplayAlerts = TrueApplication.ScreenUpdating = TrueEnd Sub

Trong đoạn mã trên, chúng ta đã áp dụng một đổi mới TexttoFind được gán mang lại “2020” ngay từ trên đầu. Mã VBA kế tiếp thực hiện vòng lặp For Next trong VBA để trải qua từng sheets cùng kế tiếp kiểm tra tên của mỗi sheets trải qua hàm INSTR. Hàm này đang đánh giá xem thương hiệu các sheets tất cả tự 20đôi mươi hay không. 

Nếu có, nó sẽ trả về số địa điểm khu vực search thấy văn uống bạn dạng này (trong ngôi trường vừa lòng này là năm 2020). Nếu không tìm kiếm thấy văn phiên bản chúng ta đã kiếm tìm tìm, nó đang trả về 0.

Như vậy được sử dụng với ĐK IF Then. Do kia giả dụ tên sheets tất cả chuỗi văn uống bản 2020, nó sẽ được tách bóc với lưu lại thành một tập tin riêng lẻ. Nếu không tồn tại chuỗi văn bản này, điều kiện IF sẽ không còn được đáp ứng cùng không tồn tại gì xẩy ra.

CÓ THỂ BẠN CŨNG QUAN TÂMHướng dẫn phương pháp áp dụng Hàm IF trong Excel đơn giản dễ dàng hiểuHướng dẫn cách thao tác làm việc trình bày format bảng tài liệu vào Excel chuẩn nhấtHướng dẫn bí quyết tạo nên bảng dữ liệu tiêu chuẩn chỉnh trên Excel