Saludos Amigos !!
Una vez más molestándolos, solamente quisiera que me ayudaran en una cosita nada más, tengo un código que bajé de internet que crea una función en excel que suma valores con el fondo de un color determinado; Osea que si tengo un rango de fila [ A1:A20 ] que me sume las celdas que correspondan al color de la celda que hay en [B1] pongamos ejemplo color azul; entonces me sumará de dicho rango sólo las celdas que ponga de fondo azul... Asi pués este es el código
Function SumByColor(InputRange As Range, ColorRange As Range) As Double
' returns the sum of each cell in the range InputRange that has the same
' background color as the cell in ColorRange
' example: =SumByColor($A$1:$A$20,B1)
' range A1:A20 is the range you want to sum
' range B1 is a cell with the background color you want to sum
Dim cl As Range, TempSum As Double, ColorIndex As Integer
' Application.Volatile ' this is optional
ColorIndex = ColorRange.Cells(1, 1).Interior.ColorIndex
TempSum = 0
On Error Resume Next ' ignore cells without values
For Each cl In InputRange.Cells
If cl.Interior.ColorIndex = ColorIndex Then
TempSum = TempSum + cl.Value
End If
Next cl
On Error GoTo 0
Set cl = Nothing
SumByColor = TempSum
End Function
Me llamó poderosamente la atención porque hay cosillas que uso en la que requiero el uso de colores para ciertos cálculos. Probándo dicha macro, me encontré de que cuando estoy ya en la hoja de excel, si hago alguna modificación a las celdas que quiero que sume, no lo hace; Entonces si me podrian ayudar a que cuando modifique cierta celda dentro del rango, me actualice los cálculos en donde yo tengo la función. - No sé si me entiendan pero si la prueban veran de lo que les digo -
LES AGRADEZCO MUCHO !!!! FELIZ NAVIDAD Y PROSPERO AÑO NUEVO 2004
DESDE COSTA RICA, CA
odelllp™
Una vez más molestándolos, solamente quisiera que me ayudaran en una cosita nada más, tengo un código que bajé de internet que crea una función en excel que suma valores con el fondo de un color determinado; Osea que si tengo un rango de fila [ A1:A20 ] que me sume las celdas que correspondan al color de la celda que hay en [B1] pongamos ejemplo color azul; entonces me sumará de dicho rango sólo las celdas que ponga de fondo azul... Asi pués este es el código
Function SumByColor(InputRange As Range, ColorRange As Range) As Double
' returns the sum of each cell in the range InputRange that has the same
' background color as the cell in ColorRange
' example: =SumByColor($A$1:$A$20,B1)
' range A1:A20 is the range you want to sum
' range B1 is a cell with the background color you want to sum
Dim cl As Range, TempSum As Double, ColorIndex As Integer
' Application.Volatile ' this is optional
ColorIndex = ColorRange.Cells(1, 1).Interior.ColorIndex
TempSum = 0
On Error Resume Next ' ignore cells without values
For Each cl In InputRange.Cells
If cl.Interior.ColorIndex = ColorIndex Then
TempSum = TempSum + cl.Value
End If
Next cl
On Error GoTo 0
Set cl = Nothing
SumByColor = TempSum
End Function
Me llamó poderosamente la atención porque hay cosillas que uso en la que requiero el uso de colores para ciertos cálculos. Probándo dicha macro, me encontré de que cuando estoy ya en la hoja de excel, si hago alguna modificación a las celdas que quiero que sume, no lo hace; Entonces si me podrian ayudar a que cuando modifique cierta celda dentro del rango, me actualice los cálculos en donde yo tengo la función. - No sé si me entiendan pero si la prueban veran de lo que les digo -
LES AGRADEZCO MUCHO !!!! FELIZ NAVIDAD Y PROSPERO AÑO NUEVO 2004
DESDE COSTA RICA, CA
odelllp™