En este artículo, crearemos una función personalizada para calcular la suma de números en las celdas en el rango que tiene un color definido.

Para este ejemplo, los datos de muestra consisten en datos del equipo de ventas. Los datos del equipo de ventas contienen detalles relacionados con la cantidad de artículos vendidos. Contiene información relacionada con el producto que está disponible en tres colores gris, rojo y verde. Queremos encontrar la suma del artículo vendido por color de producto.

ArrowRaw

Para calcular la suma por color, hemos creado la función personalizada «SumByColor». Esta función toma dos parámetros de rango como entrada. El primer parámetro de rango define el color interior de la celda y el segundo parámetro de rango define el rango de la muestra.

ArrowOutput

Explicación del código

Application.Volatile se usa porque se recalculará cada vez que se cambie un valor de celda en el libro de trabajo.

DefinedColorRange.Interior.ColorIndex El código anterior se usa para obtener el color interior del rango definido.

Siga a continuación el código

Option Explicit

Function SumByColor(DefinedColorRange As Range, SumRange As Range)

Application.Volatile

'Declaring variables

Dim ICol As Integer

Dim GCell As Range

'Getting the interior color of the cell

ICol = DefinedColorRange.Interior.ColorIndex

'Looping through the defined range

For Each GCell In SumRange



If ICol = GCell.Interior.ColorIndex Then

'Getting the sum of matching colored cell

SumByColor = SumByColor + GCell.Value

End If

Next GCell

End Function

Si te gustó este blog, compártelo con tus amigos en Facebook y Facebook.

Nos encantaría saber de usted, háganos saber cómo podemos mejorar nuestro trabajo y hacerlo mejor para usted. Escríbanos a [email protected]