Bạn bỏ cái Merge ở dòng tiêu đề đi là được. Tôi cũng không biết nguyên nhân.Trong file gửi kèm em có 1 cái macro xóa cột B, nhưng gặp một lỗi là khi em sử dụng chức năng Auto Filter rồi em xóa thì những Cell bị ẩn do Filter sẽ không bị xóa
a/c giải quyết giúp em với
thank
Trong file gửi kèm em có 1 cái macro xóa cột B, nhưng gặp một lỗi là khi em sử dụng chức năng Auto Filter rồi em xóa thì những Cell bị ẩn do Filter sẽ không bị xóa
a/c giải quyết giúp em với
thank
Sub Xoa()
With [B3:B10000]
.AutoFilter 1, "<>1"
.ClearContents
.AutoFilter 1, "=1"
End With
End Sub
Người ta đang muốn xóa sau khi Filter. Đâu phải lúc nào cũng Filter với điều kiện "=1". Không lẽ điều kiện khác thì phải sửa code lại à.Thế bạn đã thấy ở đâu xoá được các dòng ẩn bởi Auto Filter chưa ?
Đối với trường hợp này Tôi thường làm ngược lại tức là dòng nào muốn xoá thì cho nó hiện lên, dòng nào không muốn xoá thì cho nó ẩn đi. Sau khi xóa xong thì Auto Filter lại
Code cho ví dụ của bạn như sau:
Mã:Sub Xoa() With [B3:B10000] .AutoFilter 1, "<>1" .ClearContents .AutoFilter 1, "=1" End With End Sub
Range().Select
Selection.Clearcontents
Người ta đang muốn xóa sau khi Filter. Đâu phải lúc nào cũng Filter với điều kiện "=1". Không lẽ điều kiện khác thì phải sửa code lại à.
Bình thường, nếu bạn xóa một vùng nào đó (Range().Clearcontents) thì cả vùng đó sẽ bị xóa, kể cả các dòng ẩn do Filter đi nữa. Chỉ trường hợp chọn rồi xóa mới xóa các dòng hiện. Ví dụ code sau sẽ chỉ xóa những dòng được Filter:
Trường hợp này, nguyên nhân như tôi nói ở bài #2.PHP:Range().Select Selection.Clearcontents
mình làm mà có dc đâuBạn bỏ cái Merge ở dòng tiêu đề đi là được. Tôi cũng không biết nguyên nhân.
Bác nào biết lý do giải thích giùm cho anh em hiểu luôn.
mình làm mà có dc đâu
Chắc chắn không bao giờ được ---> ClearContents chỉ xóa được cell ẩn không phải do Filter tạo raBây giờ thế này. Tạo một file mới, tạo AutoFilter lọc và dùng lệnh Range().Clearcontents xem có được không nhé. Đừng lấy file cũ của tác giả.
Không có gì là không thể cả ---> Bùn lắm ta dùng vòng lập quét qua các cell ---> Xét điều kiện nếu cell bị ẩn thì XÓAem test cung không được( file gủi kèm )
chắc là phải bó tay với mấy cái Filter thôi
-- EM có tối kiến này
thử xài vòng lặp rồi xóa theo từng cell của colum đó dc không a
Bác nào viết code giùm em với, em mới học VBA nên không rành lắm
Có phải ý bạn là xóa bỏ những dòng nào bị ẩn đi ? Nếu vậy thì dùng code sau:em test cung không được( file gủi kèm )
chắc là phải bó tay với mấy cái Filter thôi
-- EM có tối kiến này
thử xài vòng lặp rồi xóa theo từng cell của colum đó dc không a
Bác nào viết code giùm em với, em mới học VBA nên không rành lắm
Sub del()
On Error Resume Next
Dim LastRow As Integer, i As Integer
LastRow = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Row - 1
For i = LastRow To 1 Step -1
If Rows(i).Hidden = True Then
Rows(i).Delete
End If
Next i
End Sub
Nhờ mod xoá giúp bài này. Thanks!