300 Ejemplos

Resaltar celda activa

Highlight Active Cell

A continuación, veremos un programa en Excel VBA ese resalta la fila y la columna de la celda activa (celda seleccionada). Este programa sorprenderá e impresionará a su jefe.





Situación:

Resalte la celda activa en Excel VBA





Cada vez que cambiamos la celda activa en Sheet1, se debe ejecutar una macro. Puede lograr esto creando un evento de cambio de selección de hoja de trabajo.

¿Cómo se filtra en Excel?

1. Abra el Editor de Visual Basic .



2. Haga doble clic en Sheet1 (Sheet1) en el Explorador de proyectos.

3. Elija Hoja de trabajo en la lista desplegable de la izquierda. Elija SelectionChange de la lista desplegable de la derecha.

Evento de cambio de selección de hoja de trabajo en Excel VBA

Agregue las siguientes líneas de código al evento de cambio de selección de hoja de trabajo:

4. Declaramos cuatro variables de tipo Integer. Uno llamado rowNumberValue, uno llamado columnNumberValue, uno llamado iy uno llamado j.

NingunorowNumberValueComo Entero, columnNumberValueComo Entero, IComo Entero, jComo Entero

5. Primero, agregamos la línea que cambia el color de fondo de todas las celdas a 'Sin relleno'.

cómo abrir un archivo xml en Excel
Cells.Interior.ColorIndex = 0

6. Inicializamos la variable rowNumberValue con el número de fila de la celda activa y la variable columnNumberValue con el número de columna de la celda activa.

rowNumberValue = ActiveCell.row
columnNumberValue = ActiveCell.column

7. Destacamos la columna azul. Es decir: todas las celdas con un número de fila menor o igual a rowNumberValue y el número de columna igual a columnNumberValue

Parai = 1PararowNumberValue
Celdas (i, columnNumberValue) .Interior.ColorIndex = 37
próximoI

Explicación: para este ejemplo (ver imagen arriba), rowNumberValue es igual a 12 y columnNumberValue es igual a 8. Las líneas de código entre For y Next se ejecutarán doce veces. Para i = 1, Excel VBA colorea la celda en la intersección de la fila 1 y la columna 8. Para i = 2, Excel VBA colorea la celda en la intersección de la fila 2 y la columna 8, etc.

Nota: en lugar del número 37 de ColorIndex (azul), puede utilizar cualquier número de ColorIndex.

8. De manera similar, resaltamos la fila azul. Es decir: todas las celdas con un número de fila igual a rowNumberValue y un número de columna menor o igual a columnNumberValue.

Paraj = 1ParacolumnNumberValue
Celdas (rowNumberValue, j) .Interior.ColorIndex = 37
próximoj

9. Ahora es el momento de probar el programa. Descargue el archivo de Excel y vea cómo la fila y la columna de la celda activa se resaltan cada vez que cambia la celda activa.

3/6 Completado! Aprenda mucho más sobre eventos>
Ir al capítulo siguiente: Formación



^