Resaltar columna de la celda activa

Vamos a continuar con la práctica de la celda activa pero esta vez para resaltar con un color, toda la columna de la celda activa.

Abrimos el editor de Visual Basic (Alt + F11) y damos doble clic sobre la Hoja1 en el explorador de proyectos para activar el espacio de edición de macros en el editor:

Nos vamos a ubicar en el espacio de edición de macros y copiamos el siguiente código:

Sub ResaltarColumnadeCeldaActiva()

'Esta macro aplica color a toda la Columna de la celda activa y deja las demas sin color

Dim NroColumna As Integer

NroColumna = ActiveCell.Column

Cells.Select

Selection.Interior.ColorIndex = xlNone

Columns(NroColumna).Select

Selection.Interior.ColorIndex = 3

End Sub

Veamos la interpretación de cada línea.

  1. La primera línea Sub ResaltarColumnadeCeldaActiva (), indica el inicio y nombre de la macro ResaltarColumnadeCeldaActiva.
  2. La segunda línea que iniciar con una coma sencilla es un comentario informativo para identificar más fácil lo que realizará la macro y en el Editor VB se marcará en color verde toda la línea.
  3. La tercera línea es la tipificación de la variable NroColumna en la cual vamos a guardar el número de la Columna de la celda activa y por tanto definimos esta variable como Integer pues vamos a guardar en ella un número entero.
  4. La cuarta línea es donde guardamos en la variable NroColumna el número de la columna de la celda activa (Column).
  5. Con la quinta línea lo que estamos realizando es la selección de todas las celdas de la hoja para luego quitar el color que pueda tener cualquier celda.
  6. Es en la línea 6 donde utilizamos el mismo código que hemos utilizado para aplicar color pero esta vez es para dejar sin color todas las celdas que ya seleccionamos con la instrucción xlNone.
  7. Con la línea 7 lo que estamos realizando es seleccionar una columna, pero cuál?, es aquí donde tiene un poco más de valor el uso de las variables. Resulta que el código para seleccionar una columna, por ejemplo la columna 4 sería Columns(4).Select, pero como la idea es resaltar toda la columna de cualquier celda que seleccionemos previamente, no podemos indicar el número de la columna sin el uso de una variable; así que si por ejemplo seleccionamos la celda D14 o D3 o D24, primero guardamos en la variable NroColumna el número de la columna con el código de la línea 4 y luego utilizamos esta misma variable NroColumna en el código de selección de toda la Columna, es decir Columns(NroColumna).Select donde NroColumna ya tiene almacenado el número de la columna de la celda activa.
  8. Con la línea 8 lo que hacemos es aplicar color a la columna que acabamos de seleccionar en el paso anterior con el uso de la variable NroColumna
  9. La última línea marca el fin (End) de la Macro o Subrutina (Sub)

Si queremos ejecutar la macro desde el Editor de Visual Basic, es necesario que el cursor este ubicado en cualquiera de las líneas de la macro y luego damos F5. La otra alternativa es vincular la macro a una autoforma en la hoja de Excel. En cualquier de los dos casos, el resultado de la macro es el siguiente:

Al seleccionar otra celda:

Descargar archivo de trabajo.

MÁS SOBRE

Gerencie.com en su correo.

Suscríbase y nosotros colocaremos en su bandeja de entrada la mejor información que generamos diariamente.

Siéntase libre de opinar

En Gerencie.com está permitido opinar, criticar, discutir, controvertir, disentir, etc. Lo que no está permitido es insultar o escribir palabras ofensivas o soeces. Si lo hace, su comentario será rechazado por el sistema o será eliminado por el administrador. Por último, trate de no escribir en mayúscula sostenida, resulta muy difícil leerle.