Resaltar la fila o columna de la celda activa le ayudará a encontrar los datos que necesita más rápidamente, y la implementación de la técnica es más fácil de lo que podría pensar.

    En una hoja compleja con muchos datos, a veces es útil resaltar la fila o columna correspondiente de la celda activa, o ambas. Hacerlo parece un problema complejo, pero es más fácil de lo que usted piensa. Usaré la propiedad ActiveCell de VBA para devolver la fila y columna de la celda activa. Luego, construiré una regla de formato condicional que se basa en ese valor para formatear.

    Los archivos de demostración de Excel (.xls y.xlsm) contienen el conjunto de datos simples que se muestra en la . Puede trabajar con cualquier hoja que desee. Como puede ver en la barra de Fórmulas, F3 y G3 son valores literales, no expresiones. Esos valores son el resultado de un poco de magia VBA y no de valores que se introducen manualmente. Eso es lo que haremos primero.

    Añadiremos una función de resaltado a este sencillo conjunto de datos.

    Devuelve la fila y columna activas

    Las celdas F3 y G3 se denominan rangos. Usando las etiquetas en F2 y G2, puede crear esos rangos con nombre como se indica a continuación:

    1. Seleccione F2:G3. En Excel 2003, pase al paso 3.
    2. Haga clic en la ficha Fórmulas.
    3. En el grupo Nombres definidos, haga clic en Crear a partir de selección. En Excel 2003, elija Nombre en el menú Insertar y seleccione Crear.
    4. En el cuadro de diálogo resultante, asegúrese de que la Fila superior esté marcada (la predeterminada) y haga clic en Aceptar.

    Ahora tiene dos nombres de rango, SelRow en F3 y SelCol en G3. Aunque la muestra los valores en estas celdas, si los estás siguiendo, estarán vacíos. Ahora, vamos a crear un procedimiento VBA para llenarlos:

    1. Pulse[Alt]+[F11] para abrir el Visual Basic Editor (VBE.
    2. En el Explorador de proyectos, haga doble clic en el objeto de hoja apropiado (si es necesario) para abrir el módulo de la hoja. En este caso, esa es la Hoja 1 (ActiveCellHighlight.
    3. Introduzca el procedimiento que se muestra en la Lista A .
    4. Vuelve a la hoja.

    Listado A

    Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'Devolver fila o columna activa en celdas con nombre. SelRow] = ActiveCell.Row[SelCol] = ActiveCell.Column End Sub
    

    Este procedimiento actualizará los valores de las filas y columnas activas en SelRow y SelCol, respectivamente.

    Para que el procedimiento funcione en las últimas versiones de Excel, debe guardar el archivo como un archivo habilitado para macros (esto no es necesario en 2003):

    1. Haga clic en la ficha Archivo. En Office 2007, haga clic en el botón Oficina.
    2. Seleccione Guardar como en el panel izquierdo.
    3. En el cuadro de diálogo resultante, seleccione Libro de trabajo habilitado para macros de Excel (.xlsm) en el menú desplegable Guardar como. Introduzca un nombre si aún no lo ha hecho.
    4. Haga clic en Guardar.

      En este punto, F3 y G3 deben mostrar los valores de fila y columna, respectivamente, para la celda activa. Debido a que usamos el procedimiento SelectionChange, este valor se actualizará automáticamente, cada vez que cambie la celda activa. Puede que haya esperado un carácter alfabético para la columna, pero no se preocupe – el valor entero que ve es correcto.

      Aplicar el formato condicional

      Ahora, está listo para aplicar las reglas de formato que harán el resaltado. Hay dos – uno resalta la fila y el otro resalta la columna. Para resaltar la fila activa, haga lo siguiente:

      1. Seleccione el rango de datos. En este caso, eso es B3:D12. En Excel 2003, pase al paso 3.
      2. Haga clic en la ficha Inicio.
      3. En el grupo Estilos, haga clic en Formato condicional. En Excel 2003, seleccione Formato condicional en el menú Formato y pase al paso 6.
      4. En el menú resultante, seleccione Nueva regla.
      5. En el panel superior, seleccione Usar una fórmula para determinar qué celdas formatear

      .

      1. En el panel inferior, introduzca la fórmula =ROW(B3)=SelRow . En Excel 2003, seleccione Fórmula en el menú desplegable Condición 1 e introduzca la misma fórmula.
    1. Haga clic en el botón Formatear.
    2. Haga clic en la pestaña Rellenar. En Excel 2003, haga clic en la ficha Patrones.
    3. Elija un color y haga clic en Aceptar dos veces. La muestra la nueva regla resaltando la fila activa dentro del rango de datos.
    4. Note que el valor en F3 (SelRow) es 6 y la nueva regla resalta la fila 6 – eso es exactamente lo que queremos. Para añadir el resaltado de la columna, repita los pasos anteriores, pero en el paso 6, introduzca la expresión =COLUMN(B3)=SelCol en lugar de la expresión ROW() .

      Añada el resaltado de la columna.

      Póngalo en uso

      Puedes usar sólo una regla o combinarlas como yo lo he hecho. Lo más probable es que desee ubicar los dos rangos nombrados SelRow y SelCol en un lugar alejado. Esta técnica es ideal para cuadros de mando porque es fácil de implementar y muy eficaz.

      Envíenme sus preguntas sobre Office

      Respondo a las preguntas de los lectores cuando puedo, pero no hay garantía. Cuando se ponga en contacto conmigo, sea lo más específico posible: Por ejemplo, «Please troubleshoot my workbook and fix what’s wrong» probablemente no obtendrá respuesta, pero «Can you tell me why this formula is’ t returning the expected results? ConsejoTecnologico.com no me reembolsa mi tiempo ni mi experiencia, ni tampoco pido honorarios a los lectores. Puede ponerse en contacto conmigo en susansalesharkins@gmail.com.