si Necesito aumentar el color amarillo como le hago

Respuesta de
a
Usuario

dentro de los rangos establecidos quiero pintar una celda que sea de color amarillo

como

le hago

 

En espera de tu respuesta

 

Avatar
Experto

Hola, entonces tu nueva macro quedaría así:

 

Sub colores()
'por luismondelo
Range("a4:n4").Select
For Each celda In Selection
If celda.Interior.ColorIndex = 3 Then
rojo1 = rojo1 + 1
End If
If celda.Interior.ColorIndex = 14 Then
verde1 = verde1 + 1
End If
If celda.Interior.ColorIndex = 23 Then
azul1 = azul1 + 1
End If
If celda.Interior.ColorIndex = 6 Then
amarillo1 = amarillo1 + 1
End If
Next

Range("a5:n5").Select
For Each celda In Selection
If celda.Interior.ColorIndex = 3 Then
rojo2 = rojo2 + 1
End If
If celda.Interior.ColorIndex = 14 Then
verde2 = verde2 + 1
End If
If celda.Interior.ColorIndex = 23 Then
azul2 = azul2 + 1
End If
If celda.Interior.ColorIndex = 6 Then
amarillo2 = amarillo2 + 1
End If
Next
range("a8").value ="rojos primera fila:"
range("b8").value = rojo1
range("a9").value ="verdes primera fila:"
range("b9").value = verde1
range("a10").value ="azules primera fila:"
range("b10").value = azul1
range("a11").value ="amarillos primera fila:"
range("b11").value = amarillo1

range("a13").value ="rojos segunda fila:"
range("b13").value = rojo2
range("a14").value ="verdes segunda fila:"
range("b14").value = verde2
range("a15").value ="azules segunda fila:"
range("b15").value = azul2
range("a16").value ="amarillos segunda fila:"
range("b16").value = amarillo2



End Sub
 

 

recuerda finalizar por favor

 

Usuario

como se la condición de los colores

por ejemplo amarillo = 6 Then amarillo

..por ejemplo si quiero aumentar otros colores

 

como le hago la condición

de los colores que yo quiera  aumentar

 

por favor me podrías enseñar

Avatar
Experto

escribe en google:

colorindex excel vba

 

y en la primera dirección encontrarás una tabla con los colores y su equivalencia en número

Usuario

me han pedido que haga hasta la fila  a550:N550

 

como puedo hacer para hacer de manera rápida

por que repetir todo el código hasta el 550 esta enorme

hay alguna manera de hacer con constatantes de los colores

y solo ir cambiando el numero de celdas

 

en espera de tu respuesta

 

Avatar
Experto

Hola, te mando la nueva macro que debes utilizar:

Rellena los cuatro colores desde la fila 4 hasta la 550 como quieras y ejecuta esta macro:

Sub contarcolores()
'por luismondelo
Range("o3").Value = "rojos"
Range("p3").Value = "verdes"
Range("q3").Value = "azules"
Range("r3").Value = "amarillos"
Range("o4").Select
Do While ActiveCell.Row <> 551
ubica = ActiveCell.Address
Range(Cells(ActiveCell.Row, 1), Cells(ActiveCell.Row, 14)).Select
For Each celda In Selection
If celda.Interior.ColorIndex = 3 Then
rojo = rojo + 1
End If
If celda.Interior.ColorIndex = 14 Then
verde = verde + 1
End If
If celda.Interior.ColorIndex = 23 Then
azul = azul + 1
End If
If celda.Interior.ColorIndex = 6 Then
amarillo = amarillo + 1
End If
Next
Cells(ActiveCell.Row, 15).Value = rojo
Cells(ActiveCell.Row, 16).Value = verde
Cells(ActiveCell.Row, 17).Value = azul
Cells(ActiveCell.Row, 18).Value = amarillo
rojo = 0
verde = 0
azul = 0
amarillo = 0
Range(ubica).Select
ActiveCell.Offset(1, 0).Select
Loop
End Sub
 

 

Usuario

funciono de maravilla

 

mil gracias