baolong0412
Thành viên mới
- Tham gia
- 24/6/21
- Bài viết
- 10
- Được thích
- 0
Chọn rồi xóa là một việc mà Hàm và công thức Excel chắc không làm được, nhưng làm "tàng hình" chúng đi thì dùng công thức trong Conditional Formating thì có thể làm đượcEm có 1 bảng dữ liệu hàng trăm dòng, muốn chọn nhanh các ô có giá trị bằng 0 từ cột H đến cột K để xóa. Xin gửi kèm theo File ạ. Xin cảm ơn!
Vâng, cảm ơn Anh nhiều!Trước tiên bạn chọn từ H6 đến K41 rồi nhấn Ctrl+F
Hộp Find and Replace sẽ hiện ra.
Tab Find
Find what: nhập số 0
Look in: Values
Rồi nhấn Find All
Nó sẽ hiện ra danh sách ô trùng bên dưới, click chuột kéo cho cái hộp thoại đó rộng ra(góc phải dưới) rồi click vô chữ Value (của danh sách đã tìm được cho nó sắp xếp theo bé lớn lại) rồi kích vô dòng đầu tiên có Value là 0 rồi lăn chuột xuống, rồi giữ phím Shift rồi click vô dòng có value =0 dưới cùng để chọn hết. Thế là các ô giá trị 0 đã được chọn, nhấn Close hộp thoại Find and Replace rồi nhấn Delete để xoá thôi.
Quá dễ đúng không!
Nhờ anh có thể cho em đoạn code Vba để thực hiện nội dung trên được không ạ!Vâng, cảm ơn Anh nhiều!
Bạn thử tìm hiểu cách record macro xem thế nào.Nhờ anh có thể cho em đoạn code Vba để thực hiện nội dung trên được không ạ!
Record macro không thực hiện được bước ở Find and Replace Anh ah, không biết có phải do em thực hiện không đúng hay sao?Bạn thử tìm hiểu cách record macro xem thế nào.
Chọn như bạn thì số 10 với số 0 nó cũng chọn hết áRecord macro không thực hiện được bước ở Find and Replace Anh ah, không biết có phải do em thực hiện không đúng hay sao?
Bạn chọn Find Next thì mới ghi macro được chứ Find All thì không được đâu.Record macro không thực hiện được bước ở Find and Replace Anh ah, không biết có phải do em thực hiện không đúng hay sao?
Tôi chỉ nói ghi macro nhưng Find All thì chịu rồi. Làm như tôi nói, cho số 0 thành màu trắng trùng với màu nền là khả thi và dễ nhất.Find Next thì nó chọn tất cả các số đi kèm với số 0 Anh ah, như 10, 20,...Mặt khác bảng dữ liệu có đến hàng trăm dòng thì Find Next thấy nó tìm nhiều lần quá Anh!
Nếu có vài trăm dòng thì dùng tạm thế này.bảng dữ liệu có đến hàng trăm dòng
Mục đích của em là muốn chọn các giá trị bằng 0 rồi xóa, để cho File bảng tính đỡ nặng, vì giá trị = 0 chiếm gần 90% trong nhiều cột và hàng trăm, lên đến hàng ngàn dòng Anh ah!Nếu có vài trăm dòng thì dùng tạm thế này.
Nếu vậy thì Hàm và công thức (là cái box mà bạn đang đăng bài đấy) làm sao làm được. Phải dùng VBA thôi.Mục đích của em là muốn chọn các giá trị bằng 0 rồi xóa, để cho File bảng tính đỡ nặng, vì giá trị = 0 chiếm gần 90% trong nhiều cột và hàng trăm, lên đến hàng ngàn dòng Anh ah!
Vậy bạn phải thực hiện như bài #14 rồi.Mục đích của em là muốn chọn các giá trị bằng 0 rồi xóa, để cho File bảng tính đỡ nặng, vì giá trị = 0 chiếm gần 90% trong nhiều cột và hàng trăm, lên đến hàng ngàn dòng Anh ah!
Từ "bạn" ở đây là chỉ ai vậy?Vậy bạn phải thực hiện như bài #14 rồi.
Thì người ta muốn VBA mà bạn. Bạn có đọc bài #5 không? Chẳng qua người ta tranh thủ chủ đề đã có trong "Hàm và công thức" để hỏi thôi.Nếu vậy thì Hàm và công thức (là cái box mà bạn đang đăng bài đấy) làm sao làm được. Phải dùng VBA thôi.
Tôi nghĩ là giúp bạn sẽ mất nhiều thời gian. Vì bạn chỉ đặt vấn đề chung chung, bạn không giải thích kỹ. Có lẽ nếu người ta đưa ra phương án rồi bạn sẽ cụ thể hóa dần dần cái "em muốn" của bạn.Find Next thì nó chọn tất cả các số đi kèm với số 0 Anh ah, như 10, 20,...
Private Sub CommandButton1_Click()
Selection.Select
Selection.Find(What:="0", After:=ActiveCell, LookIn:=xlValues, LookAt:= _
xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate ' (A)
Selection.ClearContents ' (B)
End Sub
Sub test()
' xoa_0 Selection, 0 ' chon vung can thao tac roi chay sub test
' find_xoa_0 Selection, "hic hic" ' chon vung can thao tac roi chay sub test
xoa_0 Sheet1.Range("C3:H15"), 0 ' chay sub test cho vung C3:H15 tren Sheet1
' find_xoa_0 Sheet1.Range("C3:H15"), "hic hic" ' chay sub test cho vung C3:H15 tren Sheet1
End Sub