![]() |
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 |
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