A
angelajc
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.Color = RGB(192,
192, 192)
Else
Worksheets("Riesgos").Range("A4:L4").Interior.Color = 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
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.Color = RGB(192,
192, 192)
Else
Worksheets("Riesgos").Range("A4:L4").Interior.Color = 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