ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   Cambiar color fila dependiendo de valor de columna (https://www.excelbanter.com/excel-discussion-misc-queries/74803-cambiar-color-fila-dependiendo-de-valor-de-columna.html)

[email protected]

Cambiar color fila dependiendo de valor de columna
 
Hola, quiero cambiar el color de una fila entera dependiendo del valor
de una celda en una columna.
Las filas van de A-L y la columna E es el target. Si esta columna tiene
valores "0" quiero que toda la fila se ponga gris, y si es diferente de
cero que vuelva a blanco.
Lo que he hecho es lo siguiente:
- Formato condicional en la columna E:
valor de la celda - igual a - "0%" -- cambia fondo a
gris
valor de la celda - no igual a - "0%" -- cambia fondo a
blanco


- Luego en VB he hecho lo siguiente:
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("E4") = 0 Then
Worksheets("Riesgos").Range("A4:L4").Interior.Colo r = RGB(192,
192, 192)
Else
Worksheets("Riesgos").Range("A4:L4").Interior.Colo r = RGB(255,
255, 255)
End If



[Seguramente el formato condicional sobre]. La cuestión es que esto
que funciona quiero aplicarlo a todas las filas de la hoja, y no se
como. He intentado hacer algún tipo de bucle del estilo:

'Dim n As Integer
'For n = 4 To 50
'If Range("E"$n) = 0 Then
'Worksheets("Riesgos").Range(A, L).Interior.Color = RGB(192, 192,
192)
'Else
'Worksheets("Riesgos").Range(A, L).Interior.Color = RGB(255, 255,
255)
'End If
'Next

Pero no funciona, intento averiguar una forma de poner variables en
Range pero no se como.
¿Me podríais ayudar??
Gracias


[email protected]

Cambiar color fila dependiendo de valor de columna
 
Vale, ya lo tengo, por si a alguien le interesa:

Dim n As Integer
For n = 4 To 500
If Range("E" & n) = "0" Then
Worksheets("Riesgos").Range("A" & n, "L" & n).Interior.Color =
RGB(192, 192, 192)
Else
Worksheets("Riesgos").Range("A" & n, "L" & n).Interior.Color =
RGB(255, 255, 255)
End If
Next



All times are GMT +1. The time now is 02:41 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com