Excel : Đếm số màu trong các ô và cộng các kết quả lại

Giả sử bạn có bảng dữ liệu như hình dưới

 

 

\"hinh1\"

 

Bạn muốn đếm xem có bao nhiêu ô màu Đỏ , sau đó cộng những giá trị trong các ô đó lại với nhau . Để làm việc này bạn cần tạo Macro , cách thức như sau .

Bẩm tổ hợp phím Alt-F11 để mở cửa sổ Microsoft Visual Basic trong Excel .

Chọn menu Insert > Module ; bạn dán nội dung bên dưới vào mục trống

 

Function ColorFunction(rColor As Range, rRange As Range, Optional SUM As Boolean)

Dim rCell As Range

Dim lCol As Long

Dim vResult

lCol = rColor.Interior.ColorIndex

If SUM = True Then

For Each rCell In rRange

If rCell.Interior.ColorIndex = lCol Then

vResult = WorksheetFunction.SUM(rCell, vResult)

End If

Next rCell

Else

For Each rCell In rRange

If rCell.Interior.ColorIndex = lCol Then

vResult = 1 + vResult

End If

Next rCell

End If

ColorFunction = vResult

End Function

 

\"hinh2\"

 

Quay trở lại Excel .

Để đếm số cột màu Đỏ bạn gõ công thức

=colorfunction(A3,A2:A19,0) , cho kết quả là 10

 

\"hinh3\"

 

Để tính tổng nội dung trong các ô màu Đỏ bạn gõ công thúc

=colorfunction(A3,A2:A19,1) , cho kết quả là 222