Xin giúp đỡ cách đếm số ô excel liên tiếp không tô màu nhiều nhất trên một dòng (4 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

Tôi tuân thủ nội quy khi đăng bài

LINHCM

Thành viên mới
Tham gia
10/8/24
Bài viết
40
Được thích
6
Em xin chào các anh chị quản trị Web: www.giaiphapexcel.com. Em chào các anh chị cộng đồng excel.
Em gặp vấn đề thế này:
Em cần đếm số ô liên tiếp không tô màu nhiều nhất trên một dòng trong một vùng excel như hình em gửi ạ.
Mong được sự giúp đỡ của anh chị, em rất cảm ơn ạ!
 

File đính kèm

Lần chỉnh sửa cuối:
Bạn thử Function này xem đúng ý chưa.
Mã:
Function MaxNoFill(rng As Range) As Integer
    Dim cell As Range
    Dim maxCount As Integer
    Dim currentCount As Integer
    
    maxCount = 0
    currentCount = 0
    
    For Each cell In rng
        If cell.Interior.Color = xlNone Or cell.Interior.Color = RGB(255, 255, 255) Then
            currentCount = currentCount + 1
            If currentCount > maxCount Then
                maxCount = currentCount
            End If
        Else
            currentCount = 0
        End If
    Next cell
    
    MaxNoFill = maxCount
End Function
 

File đính kèm

Em cảm ơn anh hỗ trợ, a hướng dẫn e áp dụng vào file thì đúng.
Nhưng nó không đúng trong trường hợp, màu được tô tự đồng bằng conditional formating.
Anh có thể chỉnh lại để nó hợp với tô màu bằng conditional formating không ạ!
Em cảm ơn anh
 

File đính kèm

Lần chỉnh sửa cuối:
Không đưa hết các điều kiện ngay từ đầu thì người giúp lại thêm phần vất vả rồi.
 
Em cảm ơn anh hỗ trợ, a hướng dẫn e áp dụng vào file thì đúng.
Nhưng nó không đúng trong trường hợp, màu được tô tự đồng bằng conditional formating.
Anh có thể chỉnh lại để nó hợp với tô màu bằng conditional formating không ạ!
Em cảm ơn anh
Tìm kiếm với từ khoá: How to count and sum conditionally formatted cells using VBA macro sẽ có nhiều kết quả như:


Chỉnh code lại một chút là dùng được.
 

File đính kèm

Em cảm ơn anh hỗ trợ, a hướng dẫn e áp dụng vào file thì đúng.
Nhưng nó không đúng trong trường hợp, màu được tô tự đồng bằng conditional formating.
Anh có thể chỉnh lại để nó hợp với tô màu bằng conditional formating không ạ!
Em cảm ơn anh
Theo tôi khi bạn dùng Conditional Formatting là bạn đã có 1 bộ quy tắc chỉ định màu riêng rồi. với file này mục đích chỉ là đếm ô "Không có màu" tôi thấy nó tương ứng với quy tắc "ô có giá trị rỗng" vì vậy bạn:
+Thay điều kiện If cell.Interior.Color = xlNone Or cell.Interior.Color = RGB(255, 255, 255) Then
+ bằng If cell = "" Then là xong.
 
Dạ, em sẽ sửa đổi.
Em có áp dụng thử, mà nó không ra đúng anh ạ! Nhờ anh giúp em với ạ!
Bạn nên rút kinh nghiệm cả việc viết tắt nữa, như kiểu "a", "e"

Đã có người sửa code cho bạn rồi, bạn thấy được chưaạ,
Bài đã được tự động gộp:

Theo tôi khi bạn dùng Conditional Formatting là bạn đã có 1 bộ quy tắc chỉ định màu riêng rồi. với file này mục đích chỉ là đếm ô "Không có màu" tôi thấy nó tương ứng với quy tắc "ô có giá trị rỗng" vì vậy bạn:
+Thay điều kiện If cell.Interior.Color = xlNone Or cell.Interior.Color = RGB(255, 255, 255) Then
+ bằng If cell = "" Then là xong.
Dạ, em cảm ơn anh hướng dẫn. Em có áp dụng như anh nói, nhưng nó hiện kết quả là 0 anh ạ!
 
Dạ, em sẽ sửa đổi.
Em có áp dụng thử, mà nó không ra đúng anh ạ! Nhờ anh giúp em với ạ!

Bài đã được tự động gộp:


Dạ, em cảm ơn anh hướng dẫn. Em có áp dụng như anh nói, nhưng nó hiện kết quả là 0 anh ạ!
File bạn up lên tôi thấy cách đặt điều kiện cho "ô không tô màu" trong file đầu tiên là "giá trị 1", còn file sau là "giá trị rỗng". Tôi test thì thấy ra kết quả. Nếu bạn có quy định cho "ô không tô màu" bằng giá trị nào không phải "giá trị rỗng" thì bạn tự điều chỉnh lại, như "giá trị 1, 2, 3 v.v..." tương ứng không tô màu thi if cell=1 or cell =2 or cell =3 then ...
 
Lần chỉnh sửa cuối:
Tìm kiếm với từ khoá: How to count and sum conditionally formatted cells using VBA macro sẽ có nhiều kết quả như:


Chỉnh code lại một chút là dùng được.
Cảm ơn anh rất nhiều, em đã áp dụng thành công. Không ngờ trường hợp khó vậy mà anh cũng nghĩ ra được.
Bài đã được tự động gộp:

File bạn up lên tôi thấy cách đặt điều kiện cho "ô không tô màu" trong file đầu tiên là "giá trị 1", còn file sau là "giá trị rỗng". Tôi test thì thấy ra kết quả. Nếu bạn có quy định cho "ô không tô màu" bằng giá trị nào không phải "giá trị rỗng" thì bạn tự điều chỉnh lại, như "giá trị 1, 2, 3 v.v..." tương ứng không tô màu thi if cell=1 or cell =2 or cell =3 then ...
Dạ, em áp dụng theo cách của anh Phuocam thành công rồi anh ạ, cảm ơn anh hổ trợ nhé!
Bài đã được tự động gộp:

Bạn nên rút kinh nghiệm cả việc viết tắt nữa, như kiểu "a", "e"

Đã có người sửa code cho bạn rồi, bạn thấy được chưa
Dạ, em áp dụng theo cách của anh Phuocam thành công rồi anh ạ, cảm ơn anh hổ trợ nhé!
 
Web KT

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

Back
Top Bottom