Code Vba Xóa Sheet Có điều Kiện | Giải Pháp Excel
Có thể bạn quan tâm
- Trang chủ Có gì mới Hoạt động gần nhất Tác giả
- Diễn đàn Tìm bài viết mới Tìm theo chuyên mục
- Video
Video về Excel Video về tin học khác Tin tức về tin học chung - Thông tin mới Featured content Tìm bài mới Tài Nguyên Mới Hoạt động gần nhất
- Tài nguyên Đánh giá mới nhất Tìm tài nguyên
- Đóng góp
Tìm kiếm
Mọi nơi Đề tài Diễn đàn này Đề tài này Chỉ tìm trong tiêu đề Note Tìm kiếm Tìm nâng cao…- Tìm bài viết mới
- Tìm theo chuyên mục
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
- Khách ơi! GPE thông tin đến bạn ấn phẩm "lập trình VBA trong Excel": - Phần cơ bản - Phần Nâng Cao - VBA trong Excel - Cải thiện và tăng tốc
- Trang chủ
- Diễn đàn
- Lập Trình với Excel
- Thread starter Thread starter nhk007dn
- Ngày gửi Ngày gửi 15/5/15
Người dùng đang xem chủ đề này
Đang trực tuyến: 2 (Thành viên: 0, Khách: 2) Nnhk007dn
Thành viên chính thức 

Tham gia 12/11/12 Bài viết 74 Được thích 7 Mình tìm trên GPE thấy nhiều code xóa sheet, nhưng chưa thấy đoạn code mình định nhờ nên lập topic này nhờ các bạn giúp. Nhờ các bạn giúp 2 đoạn code xóa sheet với điều kiện: Đoạn 1: Xóa các sheet có tên là các con số, và các sheet có tên là số và chữ (số phải đứng trước chữ) (vd: 1, 2, ..., 22, 23,..., 16-chữ, 17-chữ,...) miễn tìm sheet nào có tên dạng 'số' và 'số-chữ' là xóa. Đoạn 2: Xóa tất cả các sheet, trừ sheet hiện hành và sheet ẩn (nếu có) với dòng thống báo 'Chắc chưa? Xóa nhầm đừng hối hận' Mình cảm ơn! (Các bạn thông cảm, vì cùng code xóa sheet, cùng 1 người hỏi, và cùng 1 thời điểm hỏi nên mình gom 2 đoạn code lại 1 topic này cho tiện. Nếu vi phạm nội quy thì nhờ các bạn nhắc nhở để mình sửa bài.) Lần chỉnh sửa cuối: 15/5/15 Sắp xếp theo thời gian sắp xếp theo bầu chọn phihndhsp
Thành viên gạo cội



Tham gia 26/12/09 Bài viết 3,363 Được thích 2,489 Giới tính Nam Nghề nghiệp Giáo Viên nhk007dn đã viết: Mình tìm trên GPE thấy nhiều code xóa sheet, nhưng chưa thấy đoạn code mình định nhờ nên lập topic này nhờ các bạn giúp. Nhờ các bạn giúp 2 đoạn code xóa sheet với điều kiện: Đoạn 1: Xóa các sheet có tên là các con số, và các sheet có tên là số và chữ (số phải đứng trước chữ) (vd: 1, 2, ..., 22, 23,..., 16-chữ, 17-chữ,...) miễn tìm sheet nào có tên dạng 'số' và 'số-chữ' là xóa. Đoạn 2: Xóa tất cả các sheet, trừ sheet hiện hành và sheet ẩn (nếu có) với dòng thống báo 'Chắc chưa? Xóa nhầm đừng hối hận' Mình cảm ơn! (Các bạn thông cảm, vì cùng code xóa sheet, cùng 1 người hỏi, và cùng 1 thời điểm hỏi nên mình gom 2 đoạn code lại 1 topic này cho tiện. Nếu vi phạm nội quy thì nhờ các bạn nhắc nhở để mình sửa bài.) Nhấp chuột vào đây để mở rộng...Mã: Sao chép. Dim sh As Worksheet đoạn 1 tương ứng yêu cầu 1 'For Each sh In Worksheets ' If IsNumeric(sh.Name) Or IsNumeric(Left(sh.Name, 1)) Then ' sh.Cells.Clear ' End If 'Next đoạn 2 tương ứng yêu cầu 2 For Each sh In Worksheets If sh.Name <> ActiveSheet.Name And sh.Visible = True Then sh.Cells.Clear End If Next xem có đáp ứng yêu cầu của bạn không Upvote 0 N
nhk007dn
Thành viên chính thức 

Tham gia 12/11/12 Bài viết 74 Được thích 7 phihndhsp đã viết: Mã: Sao chép. Dim sh As Worksheet đoạn 1 tương ứng yêu cầu 1 'For Each sh In Worksheets ' If IsNumeric(sh.Name) Or IsNumeric(Left(sh.Name, 1)) Then ' [COLOR=#ff0000]sh.Cells.Clear[/COLOR] ' End If 'Next đoạn 2 tương ứng yêu cầu 2 For Each sh In Worksheets If sh.Name <> ActiveSheet.Name And sh.Visible = True Then [COLOR=#ff0000]sh.Cells.Clear[/COLOR] End If Next xem có đáp ứng yêu cầu của bạn không Nhấp chuột vào đây để mở rộng...Mình có thể tùy biến dòng màu đỏ cho các yêu cầu tương tự. Cảm ơn bạn và chúc vui vẻ! Upvote 0 T
thanhthat
Thành viên chính thức 

Tham gia 30/5/08 Bài viết 85 Được thích 5 phihndhsp đã viết: Mã: Sao chép. Dim sh As Worksheet đoạn 1 tương ứng yêu cầu 1 'For Each sh In Worksheets ' If IsNumeric(sh.Name) Or IsNumeric(Left(sh.Name, 1)) Then ' sh.Cells.Clear ' End If 'Next đoạn 2 tương ứng yêu cầu 2 For Each sh In Worksheets If sh.Name <> ActiveSheet.Name And sh.Visible = True Then sh.Cells.Clear End If Next xem có đáp ứng yêu cầu của bạn không Nhấp chuột vào đây để mở rộng...Mình có một File rất nhiều Sheet, nhờ Bạn code giúp như yêu cầu sau với 1/ Mình muốn lưu file mới có lựa chọn sheet, sẽ lưu file mới có danh sách lựa chọn một vài sheet trên đó, hoặc gồm tất cả các sheet (trừ sheet "Maint" điều khiển, như File kèm). 2/ Tương tự việc xóa sheet cũng vậy, có danh sách lựa chọn xóa một vài sheet hoặc chọn xóa tất cả (trừ xóa sheet Maint). Cám ơn Bạn nhiếu !!!
File đính kèm
- Save and Dele SomeSheets.xlsm Save and Dele SomeSheets.xlsm 21.9 KB · Đọc: 103
befaint
|||||||||||||
Tham gia 6/1/11 Bài viết 14,600 Được thích 19,840thanhthat đã viết: Mình có một File rất nhiều Sheet, nhờ Bạn code giúp như yêu cầu sau với 1/ Mình muốn lưu file mới có lựa chọn sheet, sẽ lưu file mới có danh sách lựa chọn một vài sheet trên đó, hoặc gồm tất cả các sheet (trừ sheet "Maint" điều khiển, như File kèm). 2/ Tương tự việc xóa sheet cũng vậy, có danh sách lựa chọn xóa một vài sheet hoặc chọn xóa tất cả (trừ xóa sheet Maint). Cám ơn Bạn nhiếu !!! Nhấp chuột vào đây để mở rộng...Mục 2. Tôi có viết một addins cũng lâu lâu rồi... Bạn thử dùng xem có được không nhé.
File đính kèm
- Del_Sheets.xla Del_Sheets.xla 58 KB · Đọc: 256
thanhthat
Thành viên chính thức 

Tham gia 30/5/08 Bài viết 85 Được thích 5 befaint đã viết: Mục 2. Tôi có viết một addins cũng lâu lâu rồi... Bạn thử dùng xem có được không nhé. Nhấp chuột vào đây để mở rộng...Bạn cho mình code luon duoc không, Mình cho vao file luôn. Cám ơn Bạn ! Upvote 0
befaint
|||||||||||||
Tham gia 6/1/11 Bài viết 14,600 Được thích 19,840thanhthat đã viết: Bạn cho mình code luon duoc không, Mình cho vao file luôn. Cám ơn Bạn ! Nhấp chuột vào đây để mở rộng...Không phải addins là tiện quá rồi sao (ở workbook nào cũng dùng được). Xem code thì tự vào file mà coi thôi. Upvote 0 T
thanhthat
Thành viên chính thức 

Tham gia 30/5/08 Bài viết 85 Được thích 5 befaint đã viết: Mục 2. Tôi có viết một addins cũng lâu lâu rồi... Bạn thử dùng xem có được không nhé. Nhấp chuột vào đây để mở rộng...Nhờ Bạn làm tiếp giúp mình mục 1 với được không. Cám ơn nhiều. Upvote 0
quanluu
Thành viên gắn bó


Tham gia 11/4/13 Bài viết 2,157 Được thích 1,274 Donate (Momo)
Giới tính Nam thanhthat đã viết: Mình có một File rất nhiều Sheet, nhờ Bạn code giúp như yêu cầu sau với 1/ Mình muốn lưu file mới có lựa chọn sheet, sẽ lưu file mới có danh sách lựa chọn một vài sheet trên đó, hoặc gồm tất cả các sheet (trừ sheet "Maint" điều khiển, như File kèm). 2/ Tương tự việc xóa sheet cũng vậy, có danh sách lựa chọn xóa một vài sheet hoặc chọn xóa tất cả (trừ xóa sheet Maint). Cám ơn Bạn nhiếu !!! Nhấp chuột vào đây để mở rộng...Ý 1 thì mình chế biến lại code của bạn xem thế nào: Mã: Sao chép. Sub LuuFile() Dim NewName As String Dim ws As Worksheet If MsgBox("Copy specific sheets to a new workbook" & vbCr & _ "New sheets will be pasted as values, named ranges removed" _ , vbYesNo, "NewCopy") = vbNo Then Exit Sub With Application .ScreenUpdating = False .DisplayAlerts = False NewName = InputBox("Please Specify the name of your new workbook") Sheets("Main").Delete For Each ws In ActiveWorkbook.Worksheets ws.Cells.Copy ws.Range("A1").PasteSpecial xlPasteValues Next ws ThisWorkbook.SaveAs ThisWorkbook.Path & "\" & NewName, 52 .ScreenUpdating = True .DisplayAlerts = True End With End Sub Upvote 0 T
thanhthat
Thành viên chính thức 

Tham gia 30/5/08 Bài viết 85 Được thích 5 quanluu1989 đã viết: Ý 1 thì mình chế biến lại code của bạn xem thế nào: Mã: Sao chép. Sub LuuFile() Dim NewName As String Dim ws As Worksheet If MsgBox("Copy specific sheets to a new workbook" & vbCr & _ "New sheets will be pasted as values, named ranges removed" _ , vbYesNo, "NewCopy") = vbNo Then Exit Sub With Application .ScreenUpdating = False .DisplayAlerts = False NewName = InputBox("Please Specify the name of your new workbook") Sheets("Main").Delete For Each ws In ActiveWorkbook.Worksheets ws.Cells.Copy ws.Range("A1").PasteSpecial xlPasteValues Next ws ThisWorkbook.SaveAs ThisWorkbook.Path & "\" & NewName, 52 .ScreenUpdating = True .DisplayAlerts = True End With End Sub Nhấp chuột vào đây để mở rộng...Cám ơn bạn ! Bạn có thể dựa trên addins dưới đây và chế biến lại chút ít giúp mình với. Thanks !
File đính kèm
- Del_Sheets.xla Del_Sheets.xla 58 KB · Đọc: 42
HieuCD
Chuyên gia GPE 
Tham gia 14/9/10 Bài viết 9,944 Được thích 23,913 thanhthat đã viết: Mình có một File rất nhiều Sheet, nhờ Bạn code giúp như yêu cầu sau với 1/ Mình muốn lưu file mới có lựa chọn sheet, sẽ lưu file mới có danh sách lựa chọn một vài sheet trên đó, hoặc gồm tất cả các sheet (trừ sheet "Maint" điều khiển, như File kèm). 2/ Tương tự việc xóa sheet cũng vậy, có danh sách lựa chọn xóa một vài sheet hoặc chọn xóa tất cả (trừ xóa sheet Maint). Cám ơn Bạn nhiếu !!! Nhấp chuột vào đây để mở rộng...mới làm vụ copy Mã: Sao chép. Sub LuuFile() Dim NewName As String, nm As Name, ws As Worksheet, i As Long, Arr(), tmp, Rng tmp = MsgBox("Chon Ok neu copy tat ca cac Sheet" & vbCr & _ "Chon No neu chi Copy cac sheet da khai bao" _ , vbYesNo, "Copy All sheets to a new workbook") Application.DisplayAlerts = False Application.ScreenUpdating = False NewName = InputBox("Please Specify the name of your new workbook") If tmp = vbYes Then ReDim Arr(1 To ActiveWorkbook.Worksheets.Count - 1) For Each ws In ActiveWorkbook.Worksheets If ws.Name <> ActiveSheet.Name Then i = i + 1 Arr(i) = ws.Name End If Next ws Sheets(Arr).Copy Else On Error GoTo thoat Rng = Range(Range("A2"), Range("A100").End(xlUp)) Sheets(WorksheetFunction.Transpose(Rng)).Copy End If With ActiveWorkbook .SaveAs ThisWorkbook.Path & "\" & NewName, 52 .Close End With If Cells(1, 1) = "ZzXxCcVv" Then thoat: MsgBox "Ten Sheet sai khong copy duoc!", , "WARNING" End If Application.ScreenUpdating = True Application.DisplayAlerts = True End Sub
File đính kèm
- Save and Dele SomeSheets.xlsm Save and Dele SomeSheets.xlsm 24.4 KB · Đọc: 93
HieuCD
Chuyên gia GPE 
Tham gia 14/9/10 Bài viết 9,944 Được thích 23,913 code xóa các Sheet Mã: Sao chép. Sub XoaSheets() Dim ws As Worksheet, i As Long, tmp, tmp1 tmp = MsgBox("Chon Yes neu Xoa tat ca cac Sheet" & vbCr & _ "Chon No neu chi Xoa cac sheet duoc chon" _ , vbYesNo, "WARNING: Delete All sheets in workbook") If tmp = vbYes Then tmp1 = MsgBox("Chon Yes neu thuc su Delete tat ca cac Sheet" & vbCr & _ "Chon No neu huy lenh Delete" _ , vbYesNo, "WARNING: Sheets Delete không the khoi phuc!!!") If tmp1 = vbNo Then Exit Sub Application.DisplayAlerts = False Application.ScreenUpdating = False For Each ws In Worksheets If ws.Name <> ActiveSheet.Name Then If tmp = vbYes Then ws.Delete Else tmp1 = MsgBox("Chon Yes neu thuc su Delete Sheet : " & ws.Name & vbCr & _ "Chon No neu khong muon Delete Sheet: " & ws.Name _ , vbYesNo, "WARNING: Sheets Delete không the khoi phuc!!!") If tmp1 = vbYes Then ws.Delete End If End If End If Next ws Application.ScreenUpdating = True Application.DisplayAlerts = True End Sub Upvote 0 T tueyennhi
Thành viên tích cực

Tham gia 18/10/10 Bài viết 1,192 Được thích 105 phihndhsp đã viết: Mã: Sao chép. Dim sh As Worksheet đoạn 1 tương ứng yêu cầu 1 'For Each sh In Worksheets ' If IsNumeric(sh.Name) Or IsNumeric(Left(sh.Name, 1)) Then ' sh.Cells.Clear ' End If 'Next đoạn 2 tương ứng yêu cầu 2 For Each sh In Worksheets If sh.Name <> ActiveSheet.Name And sh.Visible = True Then sh.Cells.Clear End If Next xem có đáp ứng yêu cầu của bạn không Nhấp chuột vào đây để mở rộng...Hay quá, đúng cái mình đang cần. Cảm ơn bạn phihndhsp nhiều! Upvote 0 V
vuvinh7273
Thành viên mới 
Tham gia 5/1/10 Bài viết 8 Được thích 0 tueyennhi đã viết: Hay quá, đúng cái mình đang cần. Cảm ơn bạn phihndhsp nhiều! Nhấp chuột vào đây để mở rộng...cái này đúng thứ mình cần, mà mình copy vào không dùng được, giúp mình với 0986567273 Upvote 0 H
Hoàng Tuấn 868
Đăng ký hôm qua
Tham gia 9/11/19 Bài viết 6,319 Được thích 6,006vuvinh7273 đã viết: cái này đúng thứ mình cần, mà mình copy vào không dùng được, giúp mình với 0986567273 Nhấp chuột vào đây để mở rộng...Bạn nên gửi file lên và nêu mong muốn cụ thể chứ code đó đâu đã đủ để chạy mà copy về. Upvote 0 Bạn phải đăng nhập hoặc đăng ký để trả lời bài viết tại đây.
Bài viết mới nhất
- SA_DQ
- 3/11/25
- Chia sẻ
- PhanTuHuong
- 7/10/21
- Xây dựng ứng dụng.
- 2013myvietnam
- Thứ tư lúc 20:22
- Excel và Giáo Dục
- vudaicacvatn
- Thứ tư lúc 17:05
- Những vấn đề chung
- GPE-Trợ Lý
- 21/12/25
- Học tập Online
- hanhlx88
- Thứ hai lúc 13:02
- Giải thích, gỡ rối, xử lý lỗi công thức
- QUANSUNG
- Thứ hai lúc 10:15
- Hướng dẫn sử dụng các hàm trong Excel
- thanhkybk
- Thứ hai lúc 17:53
- Hàm và công thức Excel
- Question Question
- duongnhuxuyen
- 12/12/25
- Lập Trình với Excel
- Dinh Hong Nhung
- Thứ hai lúc 10:04
- Hàm và công thức Excel
- Dinh Hong Nhung
- 11/12/25
- Hàm và công thức Excel
- Lá chanh
- 26/12/25
- Hàm và công thức Excel
- Bobby52
- Thứ bảy lúc 16:18
- Hàm và công thức Excel
- PhanTuHuong
- 10/12/25
- Câu lạc bộ hoạt động xã hội
- AnhThu-1976
- 24/12/25
- Những vấn đề chung
- TatLap
- 25/12/25
- Lọc và sắp xếp dữ liệu
- kenshithanh
- 1/4/15
- Chơi Game với Excel
- PhanTuHuong
- 14/12/25
- Thư giãn
- PhanTuHuong
- 5/10/20
- Thư giãn
- tiny1010
- 16/3/10
- Cấu trúc dữ liệu Excel và việc Xử lý dữ liệu
Thành viên có số lượng bài viết cao nhất tháng
- 2013myvietnam 4
- Phan Thế Hiệp 2
- thanthanhan 1
- PhanTuHuong 1
Thành viên có điểm tương tác cao nhất tháng
- 2013myvietnam 5
- Phan Thế Hiệp 4
- thanthanhan 2
- PhanTuHuong 2
Thời gian đếm ngược.
000 Ngày 00 Giờ 00 phút 00 giây Thân mời tham dự sự kiện sinh nhật GPE 2025- Trang chủ
- Diễn đàn
- Lập Trình với Excel
- Website này sử dụng cookies. Tiếp tục sử dụng trang này, đồng nghĩa với việc bạn chấp nhận website sử dụng cookies. Chấp nhận Tìm hiểu thêm.…
Từ khóa » Xóa Sheet Trong Vba
-
Đối Tượng Worksheet Trong Excel VBA - VietTuts
-
How To Delete A SHEET Using A VBA Code (Macro) - Excel Champs
-
VBA Excel Cấp Tốc Bài 4 - Xóa Tự Động Hàng Loạt Sheets Không ...
-
Làm Cách Nào để Xóa Toàn Bộ Trang Tính Hoặc Phạm Vi được Chỉ định ...
-
Top 15 Cách Xóa Sheet Trong Vba
-
Cách Xóa Nhanh 1 Sheet, Nhiều Sheet Trong Excel Cực đơn Giản, Chi Tiết
-
Mẹo Xóa Cùng Lúc Nhiều Sheet Excel Một Cách Dễ Dàng
-
Hướng Dẫn Xóa Dữ Liệu Excel Trong Bảng Danh Sách Bằng Lệnh VBA
-
Hướng Dẫn Nhập Code VBA Macro Xóa Nhiều Sheet Trong Excel
-
VBA Excel Cấp Tốc Bài 4 Xóa Tự Động Hàng Loạt Sheets Không ...
-
Đối Tượng Worksheet Trong Excel VBA - Học Excel Online Miễn Phí
-
Hướng Dẫn Cách Xóa Nội Dung Bất Kỳ Trong Bảng Danh Sách Trong ...
-
Code VBA Công Cụ Xóa - Sắp Xếp - Ẩn Sheet Siêu Tiện ích Trong Excel
-
Xóa, Chèn Dòng Tự động Giữa Hai Sheet