Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los siguientes ejemplos de código muestran maneras de resaltar la celda activa o las filas y columnas que contienen la celda activa. Estos ejemplos usan el evento SelectionChange del objeto Worksheet.
Código de ejemplo provisto por: Tom Urtis, Atlas Programming Management
Resaltado de la celda activa
El siguiente ejemplo de código borra el color en todas las celdas de la hoja de cálculo al establecer la propiedad ColorIndex igual a 0, y luego resalta la celda activa al establecer la propiedad ColorIndex igual a 8 (turquesa).
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
' Clear the color of all the cells
Cells.Interior.ColorIndex = 0
' Highlight the active cell
Target.Interior.ColorIndex = 8
Application.ScreenUpdating = True
End Sub
Resaltado de la fila y columna completas que contienen la celda activa
El siguiente ejemplo de código borra el color en todas las celdas de la hoja de cálculo al establecer la propiedad ColorIndex igual a 0, y luego resalta la fila y columna completas que contienen la celda activa al usar las propiedades EntireRow y EntireColumn.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
Application.ScreenUpdating = False
' Clear the color of all the cells
Cells.Interior.ColorIndex = 0
With Target
' Highlight the entire row and column that contain the active cell
.EntireRow.Interior.ColorIndex = 8
.EntireColumn.Interior.ColorIndex = 8
End With
Application.ScreenUpdating = True
End Sub
Resaltado de la fila y columna que contienen la celda activa en la región actual
El siguiente ejemplo de código borra el color en todas las celdas de la hoja de cálculo al establecer la propiedad ColorIndex igual a 0, y luego resalta la fila y columna que contienen la celda activa en la región actual al usar la propiedad CurrentRegion del objeto Range.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
' Clear the color of all the cells
Cells.Interior.ColorIndex = 0
If IsEmpty(Target) Or Target.Cells.Count > 1 Then Exit Sub
Application.ScreenUpdating = False
With ActiveCell
' Highlight the row and column that contain the active cell, within the current region
Range(Cells(.Row, .CurrentRegion.Column), Cells(.Row, .CurrentRegion.Columns.Count + .CurrentRegion.Column - 1)).Interior.ColorIndex = 8
Range(Cells(.CurrentRegion.Row, .Column), Cells(.CurrentRegion.Rows.Count + .CurrentRegion.Row - 1, .Column)).Interior.ColorIndex = 8
End With
Application.ScreenUpdating = True
End Sub
Acerca del colaborador
Tom Urtis, MVP, es el fundador de Atlas Programming Management, una empresa de Silicon Valley que ofrece soluciones empresariales integrales de Microsoft Office y Excel. Tom tiene más de 25 años de experiencia en la administración de negocios y el desarrollo de aplicaciones de Microsoft Office. Es, además, coautor de "Holy Macro! 2500 ejemplos de VBA para Excel".
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.