Resaltar fila activa con color

¿

¿Podrías ayudarme con esto?

Quiero resaltar la fila activa con cualquier color pero sin que se borre el color de fondo que ya tienen las celdas.

He usado este código

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

On Error Resume Next

Cells.Interior.ColorIndex = 0

Target.EntireRow.Interior.ColorIndex = 42

End Sub

Pero me borra todo los colores de fondo y no quiero eso, quiero que resalte la fila manteniendo los colores de fondo que tengo

1 Respuesta

Respuesta
1

Retirando esta línea evitas que te quite el color a todas, porque hace referencia a 'Cells' o sea a todas:

Cells.Interior.ColorIndex = 0

¿Pero qué sucederá ahora? Que al seleccionar una celda se te pinta la fila del color elegido (42) y al seleccionar otra celda se sigue manteniendo con ese color .

Entonces lo que necesitas es guardar en variables el color de fondo y la celda seleccionada. Así se la repone al momento de seleccionar otra.

Public nro As Integer
Public celdita As String
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'x Elsamatilde
'se controla si es la primera vez que se cambia el formato, en ese caso la variable nro estará vacía lo que provocará un error.
'Por eso lo controlamos con la instrucción On Error
On Error Resume Next
Range(celdita).EntireRow.Interior.ColorIndex = nro
nro = Target.Interior.ColorIndex
celdita = Target.Address(False, False)
Target.EntireRow.Interior.ColorIndex = 42
End Sub

* Macro extraída y adaptada de mi manual 500Macros.

Sdos.

Elsa

gracias por su apoyo pero no me funciona, siempre borra el color de las celdas

No tan rápido... revisa bien. Seguro que te olvidaste de copiar la declaración de la variable.

Iniciá una nueva hoja y dale color de fondo.

Luego pegá TODO el código enviado en esa hoja y recién entonces probala... luego comentame.

Sdos!

Tengo el ejemplo a tu disposición, podés solicitarlo a los correos que aparecen en mi sitio que dejo al pie,

Sdos!

¡Gracias! 

Le envíe un correo a

[email protected]

Enviado el ejemplo. Como te mencioné por mail quizás tengas un tema de fondo y entonces la variable 'nro' no es integer y no debiéramos utilizar ColorIndex sino ThemeColor u otra.

Sdos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas