Filter by font color tất cả các màu 1 lúc

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

LanAnh19

Thành viên chính thức
Tham gia
1/5/22
Bài viết
76
Được thích
8
Giới tính
Nữ
Chào các anh/chị và các bạn
Hiện nay em chỉ Filter by font color của từng màu,
Bây giở em muốn Filter by font color tất cả các màu 1 lần thì có cách nào không?
Em nhờ các anh/chị và các bạn viết code giúp đỡ, như file đính kèm
Em cảm ơn nhiều.
 

File đính kèm

  • Filter.xlsm
    9.4 KB · Đọc: 4
OK, thử code này nhé

Mã:
Option Explicit
Sub FilterColor()
Dim lr&, c&, cell As Range, ary()
lr = Cells(Rows.Count, "B").End(xlUp).Row
For Each cell In Range("B5:B" & lr)
    If cell.Font.Color > 0 Then
        c = c + 1
        If c = 1 Then
            ReDim ary(1 To 1)
        Else
            ReDim Preserve ary(1 To UBound(ary) + 1)
        End If
        ary(UBound(ary)) = CStr(cell.Offset(, -1).Value)
    End If
Next
ActiveSheet.Range("A4:B" & lr).AutoFilter Field:=1, Criteria1:=ary, Operator:=xlFilterValues
End Sub
 

File đính kèm

  • Filter.xlsm
    16.3 KB · Đọc: 8
Upvote 0
OK, thử code này nhé

Mã:
Option Explicit
Sub FilterColor()
Dim lr&, c&, cell As Range, ary()
lr = Cells(Rows.Count, "B").End(xlUp).Row
For Each cell In Range("B5:B" & lr)
    If cell.Font.Color > 0 Then
        c = c + 1
        If c = 1 Then
            ReDim ary(1 To 1)
        Else
            ReDim Preserve ary(1 To UBound(ary) + 1)
        End If
        ary(UBound(ary)) = CStr(cell.Offset(, -1).Value)
    End If
Next
ActiveSheet.Range("A4:B" & lr).AutoFilter Field:=1, Criteria1:=ary, Operator:=xlFilterValues
End Sub
Dạ em cảm ơn anh nhiều
 
Upvote 0
Code của bài #4 khi em đưa vào ứng dụng thì nó không chạy, không biết em sai chổ nào, nhờ anh chị hướng dẫn thêm
Trong file em đính kèm trong bài này, thì
sheet Data-2: không có dòng trống
sheet Data: có dòng trống
code cũng không chạy được ???!!!
Em xin cảm ơn!
 

File đính kèm

  • Ungdung.xlsm
    34.2 KB · Đọc: 3
Upvote 0
Code tại #4: Căn cứ màu chữ cột B để lọc cột A (theo STT)
Bây giờ qua file mới thì cột STT vẫn còn mà không có số TT, làm sao code hoạt động được.
File này có phải là file sát với thực tế chưa? Cột STT thực tế nó là cái gì?
Bạn cho file sát với thực tế nhé.
Nếu thực tế cột này trống thì phải dùng cách khác: hide dòng, chứ không Filter.
 
Upvote 0
Code tại #4: Căn cứ màu chữ cột B để lọc cột A (theo STT)
Bây giờ qua file mới thì cột STT vẫn còn mà không có số TT, làm sao code hoạt động được.
File này có phải là file sát với thực tế chưa? Cột STT thực tế nó là cái gì?
Bạn cho file sát với thực tế nhé.
Nếu thực tế cột này trống thì phải dùng cách khác: hide dòng, chứ không Filter.
Em không biết code anh viết dựa vào cột STT
Bài thực tế của em giống sheet Data, trong đó có những dòng trống, còn cột STT thì nó có thể là số, là ký tự hoặc là ô trống
Em nhờ anh viết giúp em lại code, em cảm ơn nhiều
Xin lỗi đã làm phiền anh
 
Upvote 0
Vậy không dùng Filter nữa.
Dùng lệnh hide các dòng có chữ tô màu
Muốn bỏ hide thì chuột phải, unhide dòng nhé.
Mã:
Option Explicit
Sub FilterColor()
Dim lr&, cell As Range, u As Range
lr = Cells(Rows.Count, "B").End(xlUp).Row
Range("B5:B" & lr).EntireRow.Hidden = True
For Each cell In Range("B5:B" & lr)
    If cell.Font.Color > 0 Then
        If u Is Nothing Then
            Set u = cell
        Else
            Set u = Union(u, cell)
        End If
    End If
Next
u.EntireRow.Hidden = False
End Sub
 

File đính kèm

  • Ungdung.xlsm
    34.1 KB · Đọc: 4
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom