Excel: Macro para contar y/o sumar celdas dependiendo de su color

Si queremos realizar una cuenta de celdas que tengan un determinado color de relleno, podemos utilizar un pequeño módulo de Visual Basic.

Antes de nada, para crear una Macro, lo que debemos hacer es abrir el editor Herramientas > Macro > Editor de Visual Basic o podemos pulsar CTRL+F11. A continuación debemos Insertar > Módulo, y pegamos el siguiente código:

Function CountByColor(CellColor As Range, CountRange As Range)
    Application.Volatile
    Dim ICol As Integer
    Dim TCell As Range

    ICol = CellColor.Interior.ColorIndex
    For Each TCell In CountRange
        If ICol = TCell.Interior.ColorIndex Then
            CountByColor = CountByColor + 1
        End If
    Next TCell
End Function

En este caso, el primer parámetro será la celda con el color que queramos, y el segundo será el rango de celdas que queremos contar que cumplen dicha condición.

Si lo que queremos es que se sumen los contenidos de las celdas que tienen un determinado color, nos servirá este otro código:

Function SumByColor(CellColor As Range, SumRange As Range)
    Application.Volatile
    Dim ICol As Integer
    Dim TCell As Range

    ICol = CellColor.Interior.ColorIndex
    For Each TCell In SumRange
        If ICol = TCell.Interior.ColorIndex Then
            SumByColor = SumByColor + TCell.Value
        End If
    Next TCell
End Function
Los comentarios estan cerrados.