Note: The other languages of the website are Google-translated. Back to English

Làm cách nào để xóa toàn bộ cột dựa trên giá trị tiêu đề trong Excel?

Trong nhiều trường hợp, bạn có thể cần phải xóa toàn bộ cột dựa trên giá trị tiêu đề trong Excel. Ví dụ: bạn cần xóa tất cả các cột chứa giá trị "cũ" trong tiêu đề. Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn các phương pháp xóa toàn bộ cột dựa trên giá trị tiêu đề một cách chi tiết.

Xóa toàn bộ cột dựa trên giá trị tiêu đề với mã VBA
Xóa toàn bộ các cột dựa trên giá trị tiêu đề với Kutools cho Excel


Xóa toàn bộ cột dựa trên giá trị tiêu đề với mã VBA

Bạn có thể xóa toàn bộ cột dựa trên giá trị tiêu đề bằng mã VBA. Hãy làm như sau.

1. nhấn Khác + F11 các phím đồng thời để mở Ứng dụng Microsoft Visual Basic cửa sổ.

2. bên trong Ứng dụng Microsoft Visual Basic cửa sổ, nhấp Chèn > Mô-đun. Và sau đó sao chép và dán mã bên dưới vào cửa sổ Mô-đun.

Mã VBA: xóa toàn bộ cột dựa trên giá trị tiêu đề

Sub DeleteSpecifcColumn()
	Set MR = Range("A1:D1")
	For Each cell In MR
		If cell.Value = "old" Then cell.EntireColumn.Delete
	Next
End Sub

Chú ý:

1) trong mã, “xưa”Là giá trị tiêu đề mà bạn muốn xóa toàn bộ cột dựa trên. Vui lòng thay đổi giá trị tiêu đề của bạn theo cách thủ công. Và A1: D1 là phạm vi cột mà bạn muốn sử dụng.
2) Mã này phân biệt chữ hoa chữ thường.

3. Nhấn nút F5 để chạy mã, toàn bộ cột có tiêu đề bằng với văn bản được chỉ định sẽ bị xóa ngay lập tức.


Xóa toàn bộ các cột dựa trên giá trị tiêu đề với Kutools cho Excel

Với Kutools cho Excel'S Chọn các ô cụ thể tiện ích, bạn có thể dễ dàng chọn tất cả các cột có chứa giá trị tiêu đề nhất định trước, sau đó xóa các cột đã chọn này cùng một lúc. Hãy làm như sau.

Trước khi áp dụng Kutools cho Excel, Xin vui lòng tải xuống và cài đặt nó trước tiên.

1. Chọn phạm vi chứa các cột bạn cần xóa, sau đó nhấp vào Kutools > Chọn > Chọn các ô cụ thể. Xem ảnh chụp màn hình:

2. bên trong Chọn các ô cụ thể hộp thoại, chọn Toàn bộ cột tùy chọn trong Loại lựa chọn và trong Loại cụ thể danh sách thả xuống, chọn equals , sau đó nhập giá trị tiêu đề vào hộp sau. Và cuối cùng nhấp vào OK cái nút. Xem ảnh chụp màn hình:

3. Nhấp vào OK trong một hộp thoại bật lên khác, sau đó các cột chứa giá trị tiêu đề được chỉ định sẽ được chọn ngay lập tức.

4. Bấm chuột phải vào tiêu đề cột của cột đã chọn, sau đó bấm Xóa bỏ từ menu chuột phải. Sau đó, tất cả các cột đã chọn sẽ bị xóa cùng một lúc.

  Nếu bạn muốn dùng thử miễn phí (30-day) của tiện ích này, vui lòng nhấp để tải xuống, và sau đó đi đến áp dụng hoạt động theo các bước trên.


Các công cụ năng suất văn phòng tốt nhất

Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn

  • Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
  • Thanh siêu công thức (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
  • Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
  • Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
  • Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
  • Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
  • Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
  • Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
  • Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2021 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ tính năng Dùng thử miễn phí 30 ngày. Bảo đảm hoàn lại tiền trong 60 ngày.
tab kte 201905

Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
officetab dưới cùng
Nhận xét (12)
Chưa có xếp hạng. Hãy là người đầu tiên xếp hạng!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin lỗi nếu điều này có vẻ siêu cơ bản nhưng đây là lần đầu tiên tôi thử vba. Sử dụng điều này như thế nào, tôi sẽ áp dụng nó để xóa nhiều tiêu đề cột. Tôi thực sự đang cố gắng chỉ giữ lại một số cột tiêu đề nhất định và xóa phần còn lại của danh sách đang thay đổi.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Trong mã đầu tiên, chỉ cần sao chép hàng thứ 4 và thay đổi "cũ" thành tên cột thứ hai và nó sẽ hoạt động
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chào! Điều này hoạt động tốt cho đến khi bạn có hai cột liền kề với cùng một tiêu đề. Giả sử phạm vi của bạn là A1: A5, A2 và A3 có tiêu đề 'cũ'. Nó sẽ xóa A2, nhưng sau đó A3 sẽ di chuyển đến vị trí A2 được sử dụng để chiếm giữ, và mã sẽ bỏ qua nó, vì nó sẽ nhìn vào A3 mới, ô tiếp theo trên phạm vi của nó.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chào Elias,
Như bạn đã đề cập, A2 và A3 có cùng tiêu đề "cũ". Nhưng chúng ở cùng một cột, sau khi áp dụng mã, toàn bộ cột A sẽ bị loại bỏ ngay lập tức.
Tôi không chắc tôi hiểu được ý của bạn. Sẽ rất tuyệt nếu bạn có thể cung cấp ảnh chụp màn hình về những gì bạn đang cố gắng làm.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, có thể thực hiện việc này với nhiều tên cột không?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào,
Hãy thử đoạn mã dưới đây. Trong dòng thứ tám, vui lòng đặt mỗi tên cột bằng dấu ngoặc kép và phân tách chúng bằng dấu phẩy. Hy vọng tôi có thể giúp đỡ. Cảm ơn bạn.

Sub DeleteSpecifcColumn ()

Làm mờ xFNum, xFFNum, xCount dưới dạng số nguyên

Làm mờ xStr dưới dạng chuỗi

Dim xArrName làm biến thể

Dim MR, xRg As Range

On Error Resume Next

Đặt MR = Phạm vi ("A1: N1")

xArrName = Array ("old", "new", "get") 'đặt mỗi tên cột bằng dấu ngoặc kép và phân tách chúng bằng dấu phẩy

xCount = MR.Count

xStr = xArrName (xFNum)

Đối với xFFNum = xCount Tới 1 Bước -1

Đặt xRg = Cells (1, xFFNum)

Đối với xFNum = 0 Đến UBound (xArrName)

xStr = xArrName (xFNum)

Nếu xRg.Value = xStr Thì xRg.EntireColumn.Delete

XFNum tiếp theo

Sau

End Sub
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi nghĩ rằng dòng 12 cần được thay đổi để mã hoạt động. Dòng gốc 12 "Đặt xRg = Cells (1, xFFNum)" đã sửa đổi dòng 12 "Đặt xRg = MR (1, xFFNum)"
Sub DeleteSpecifcColumn ()
Làm mờ xFNum, xFFNum, xCount dưới dạng số nguyên
Làm mờ xStr dưới dạng chuỗi
Dim xArrName làm biến thể
Dim MR, xRg As Range
On Error Resume Next
Đặt MR = Phạm vi ("A1: N1")
xArrName = Array ("old", "new", "get") 'đặt mỗi tên cột bằng dấu ngoặc kép và phân tách chúng bằng dấu phẩy
xCount = MR.Count
xStr = xArrName (xFNum)
Đối với xFFNum = xCount Tới 1 Bước -1
Đặt xRg = MR (1, xFFNum)
Đối với xFNum = 0 Đến UBound (xArrName)
xStr = xArrName (xFNum)
Nếu xRg.Value = xStr Thì xRg.EntireColumn.Delete
XFNum tiếp theo
Sau
End Sub
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Điều gì sẽ xảy ra nếu các tiêu đề bắt đầu từ hàng thứ 4
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Ví dụ VBA nói rằng mã sẽ xóa tất cả các cột có tiêu đề CHỨA "cũ". Đó không phải là tình huống. Toán tử = sẽ chỉ xóa các kết quả phù hợp chính xác. Bạn cần sử dụng toán tử LIKE với ký tự đại diện.
Mã cố định: Sub DeleteSpecifcColumn ()
Đặt MR = Phạm vi ("A1: D1")
Đối với mỗi ô trong MR
If cell.Value LIKE "old *" Then cell.EntireColumn.Delete
Sau
End Sub

Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chào bạn, Cảm ơn bạn đã chỉnh sửa và chia sẻ. 
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Hola, tengo una hoja de excel con varios datos, digamos 4 columnas y 12 filas, me gustaría poder printmir cada fila en un folio splitdo en una plantilla, es decir, tenemos una hoja con varios nombres y apellidos y teléfono, quiero printmir tantas páginas como filas tenga la hoja de excel, he inte tado varias cosas pero no encuentro la forma. Gracias de antemano
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chào,
Nếu bạn muốn in từng hàng trong một trang riêng biệt trong trang tính, đây là một gợi ý rằng bạn chèn các ngắt trang sau mỗi 1 hàng và sau đó in chúng.
Các phương pháp được cung cấp trong bài viết này có thể giúp ích cho bạn. Xin vui lòng có một thử. Cảm ơn bạn.
Cách Chèn Ngắt Trang Mỗi X Hàng trong Excel? [/ Url]
https://www.extendoffice.com/documents/excel/1774-excel-insert-page-break-every-row.html
Không có bình luận nào được đăng ở đây
Để lại ý kiến ​​của bạn
Đăng với tư cách khách
×
Đánh giá bài viết này:
0   Nhân vật
Các vị trí được đề xuất

Kết nối với chúng tôi

Bản quyền © 2009 - www.extendoffice.com. | Đã đăng ký Bản quyền. cung cấp bởi ExtendOffice. | BẢN ĐỒ CHI NHÁNH
Microsoft và logo Office là các nhãn hiệu hoặc nhãn hiệu đã đăng ký của Microsoft Corporation tại Hoa Kỳ và / hoặc các quốc gia khác.
Được bảo vệ bởi Sectigo SSL