Para Valedor. Pregunta publica.

Existe alguna manera de que en Exccel se pueda sombrear tanto la columna como la fila, las dos a la vez. Y dicho sombreado cambie a otra columna y fila conforme traslado la celda activa. Este sombreado solo tendría el uso practico de seguir visualmente las celdas que están por encima, debajo, a la derecha o a la izquierda de la celda activa; ya que utilizo una hoja de calculo muy grande y con columnas y filas reducidas en ancho y alto, por lo que a veces me pierdo cuando tengo que mirar el contenido de una celda que está, por ejemplo, diez filas más arriba de la celda activa. Repito la pregunta para que se entienda tu respuesta.
En lo que te refieres a usar bordes en vez de el color interior de la celda, también me vale. No obstante te amplio la información para no usar recursos del ordenador en balde. Utilizo una hoja de cálculo con 400 filas y 40 columnas, así me puedes indicar en el código que me envíes esa limitación de 400 filas y 40 columnas. No obstante y si no tienes inconveniente me gustaría que comentaras esto mismo, es decir con la limitación de la cantidad de columnas y filas, para el caso del color interior de las celdas, valdría con que me indicaras lo que tengo que modificar en el código que me enviaste la primera vez. Gracias. Un saludo desde Cádiz(España).

1 respuesta

Respuesta
1
La siguiente macro, muy parecida a la anterior, hace lo que quieres, pero, al igual que la anterior, esta borra TODOS los bordes de las celdas y aplica el borde solo a la columna y a la fila de la celda activa, trate de solo manipular 500 filas y 50 columnas, pero es más lento que manipular la fila y columna entera, saludos...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Const Color As Long = 3 'Color ROJO
If Target.Cells.Count = 1 Then
Application.ScreenUpdating = False
With Cells.Borders
.ColorIndex = 0
.LineStyle = xlNone
End With
With Target.EntireColumn.Borders
.ColorIndex = Color
.LineStyle = xlContinuous
.Weight = xlMedium
End With
With Target.EntireRow.Borders
.ColorIndex = Color
.LineStyle = xlContinuous
.Weight = xlMedium
End With
Application.ScreenUpdating = True
End If
End Sub
Mauricio Baeza
[email protected]
Todo lo que no es dado es perdido
*==========================================*
La presente respuesta ha demandado un tiempo de lectura,
análisis, elaboración y redacción. A cambio, simplemente,
pretendo que te tomes un minuto para FINALIZARLA, si
hubiera satisfecho -en alguna medida- tu requerimiento.
En caso contrario, puedes preguntarme nuevamente
aclarando qué entendí mal o qué faltó.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas