Jump to content
chris

Resaltar fila en la que esté la celda seleccionada de una tabla

Recommended Posts

Hola. 
Imagino que lo que quiero hacer, se hará mediante macros.

Tengo una tabla con una lista larga de items y varias columnas.
La idea es que al hacer click sobre cualquiera de las celdas de esa tabla, el color de fondo o los datos en esa fila, se resalten cambiando de color o volviéndose negrita/cursiva etc la información que contiene. Al clicar o desplazarse por las celdas cambiando de fila, esa fila vuelve a adoptar su formato inicial . ¿Se puede hacer esto?

Adjunto una tabla con algunas filas con el efecto resultante de seleccionar una celda . Es una tabla pelada sin código alguno. Gracias

Resaltar fila de celda seleccionada.xlsm

Share this post


Link to post
Share on other sites

Parecido a lo de @muyayito, pero resaltando solo los datos de la tabla.

La macro añadida en la hoja es:

Const Tabla As String = "Table1" 'Nombre de la tabla

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Rango As Range, Fila As Range
Set Rango = ActiveSheet.ListObjects(Tabla).Range
Rango.Interior.ColorIndex = xlNone
Rango.Font.Bold = False
If Not Intersect(Target(1, 1), Rango) Is Nothing Then
   y = Split(Rango.Address, "$")
   x = Target(1, 1).Row
   Set Fila = Range(y(1) & x & ":" & y(3) & x)
   Fila.Interior.Color = vbYellow
   Fila.Font.Bold = True
End If
End Sub

 

Resaltar fila de celda seleccionada.xlsm

Share this post


Link to post
Share on other sites

Muchas gracias a todos, de verdad. Mañana intentaré implentarlo porque ahora, al poner el código de @Antoni no lo consigo hacer funcionar y me salta la consola de VBA. Y como no soy un entendido en macros... lo que sé casi no me deja ver el error. 
Tengo más código en la misma hoja y hay un conflicto (creo). Lo reviso mañana y pruebo el resto de opciones. Gracias chicos.

Share this post


Link to post
Share on other sites
En ‎02‎/‎02‎/‎2018 at 20:58 , Antoni dijo:

Parecido a lo de @muyayito, pero resaltando solo los datos de la tabla.

La macro añadida en la hoja es:


Const Tabla As String = "Table1" 'Nombre de la tabla

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Rango As Range, Fila As Range
Set Rango = ActiveSheet.ListObjects(Tabla).Range
Rango.Interior.ColorIndex = xlNone
Rango.Font.Bold = False
If Not Intersect(Target(1, 1), Rango) Is Nothing Then
   y = Split(Rango.Address, "$")
   x = Target(1, 1).Row
   Set Fila = Range(y(1) & x & ":" & y(3) & x)
   Fila.Interior.Color = vbYellow
   Fila.Font.Bold = True
End If
End Sub

 

Resaltar fila de celda seleccionada.xlsm

 

Share this post


Link to post
Share on other sites

Excelente Maestro Antoni he visto varios ejemplos en internet que funcionan pero dañan la presentación de la hoja (fondo del color que le he asignado yo) la solución suya veo que respeta la configuración anterior voy a probarla en varias hojas que tengo, haber como va Gracias por sus aportes...

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

×
×
  • Create New...

Important Information

Privacy Policy