Como resaltar a fila e columna activas en Excel

  • Comparte Isto
Michael Brown

Neste titorial, aprenderás 3 formas diferentes de resaltar dinámicamente a fila e a columna dunha cela seleccionada en Excel.

Ao ver unha folla de traballo grande durante moito tempo, pode eventualmente perder a pista de onde está o cursor e os datos que está a mirar. Para saber exactamente onde estás en calquera momento, fai que Excel resalte automaticamente a fila e columna activas por ti. Por suposto, o resaltado debe ser dinámico e cambiar cada vez que selecciona outra cela. Esencialmente, isto é o que pretendemos conseguir:

    Resalta automaticamente a fila e a columna da cela seleccionada con VBA

    Isto O exemplo mostra como pode resaltar unha columna activa e unha fila mediante programación con VBA. Para iso, usaremos o evento SelectionChange do obxecto Folla de traballo .

    Primeiro, borra a cor de fondo de todas as celas da folla configurando o ColorIndex da propiedade a 0. A continuación, resalta toda a fila e columna da cela activa configurando a súa propiedade ColorIndex no número de índice da cor desexada.

    Private Sub Worksheet_SelectionChange ( ByVal Target As Range) Se Target.Cells.Count > 1 A continuación, saia da subaplicación.ScreenUpdating = Falso 'Limpar a cor de todas as celas Cells.Interior.ColorIndex = 0 Co destino 'Resalta a fila e a columna da cela seleccionada .EntireRow.Interior.ColorIndex = 38.EntireColumn.Interior.ColorIndex = 24 Finalizar con Application.ScreenUpdating = True End Sub

    Personalizar o código

    Se queres personalizar o código para as túas necesidades, estes pequenos consellos poden ser útiles:

    • O noso código de mostra usa dúas cores diferentes que se mostran no gif anterior: índice de cor 38 para a fila e 24 para a columna. Para cambiar a cor de resaltado , só tes que substitúeos polos códigos ColorIndex que elixas.
    • Para que a fila e a columna teñan unha cor da mesma maneira , usa o mesmo número de índice de cor para ambos.
    • Para resaltar só a fila activa , elimina ou comenta esta liña: .EntireColumn.Interior.ColorIndex = 24
    • Para resaltar só a columna activa , elimina ou comenta esta liña: .EntireRow.Interior.ColorIndex = 38

    Como engadir o código á túa folla de traballo

    Para que o código se execute en silencio en segundo plano dunha folla de traballo específica, cómpre inserilo na xanela de código que pertence a esa folla de traballo, non no módulo normal. Para facelo, siga estes pasos:

    1. No seu caderno de traballo, prema Alt + F11 para acceder ao editor de VBA.
    2. No Explorador de proxectos da esquerda," Verá unha lista de todos os libros de traballo abertos e as súas follas de traballo. Se non o ves, usa o atallo Ctrl + R para ver a xanela do Explorador de proxectos.
    3. Busca o libro de traballo de destino. No seu Microsoft ExcelObxectos , prema dúas veces na folla na que desexa aplicar o resaltado. Neste exemplo, é a Folla 1 .
    4. Na xanela Código da dereita, pega o código anterior.
    5. Garda o teu ficheiro como Libro de traballo habilitado para macros (.xlsm).

    Vantaxes : todo faise no backend; non son necesarios axustes/personalizacións por parte do usuario; funciona en todas as versións de Excel.

    Inconvenientes : hai dous inconvenientes esenciais que fan que esta técnica sexa inaplicable en determinadas circunstancias:

    • O código borra o fondo cores de todas as celas da folla de traballo. Se tes celas de cores, non uses esta solución porque perderase o teu formato personalizado.
    • Ao executar este código bloquea a función de desfacer na folla e non poderás desfacer unha acción errónea premendo Ctrl + Z .

    Resalta a fila e a columna activas sen VBA

    O mellor que podes conseguir para resaltar a fila seleccionada e /ou columna sen VBA é o formato condicional de Excel. Para configuralo, siga estes pasos:

    1. Seleccione o seu conxunto de datos no que se debe resaltar.
    2. Na pestana Inicio , na pestana Estilos , faga clic en Nova regra .
    3. Na caixa de diálogo Nova regra de formato , escolla Usar unha fórmula para determinar que celas desexa. format .
    4. No Formato de valores onde esta fórmulaé verdadeiro , introduza unha destas fórmulas:

      Para resaltar fila activa :

      =CELL("row")=ROW()

      Para resaltar columna activa :

      =CELL("col")=COLUMN()

      Para resaltar fila e columna activas :

      =OR(CELL("row")=ROW(), CELL("col")= COLUMN())

      Todas as fórmulas fan uso da función CELA para devolve o número de fila/columna da cela seleccionada.

    5. Fai clic no botón Formato , cambia á pestana Encher e selecciona a cor que desexe.
    6. Fai clic en Aceptar dúas veces para pechar ambas as ventás de diálogo.

    Se cres que necesitas instrucións máis detalladas, consulta Como crear unha regra de formato condicional baseada en fórmulas.

    Para este exemplo, optamos polo OU fórmula para sombrear a columna e a fila da mesma cor. Isto leva menos traballo e é adecuado para a maioría dos casos.

    Desafortunadamente, esta solución non é tan agradable como a de VBA porque require recalcular a folla manualmente (premendo a tecla F9). Por defecto, Excel recalcula unha folla de traballo só despois de introducir novos datos ou editar o existente, pero non cando a selección cambia. Entón, selecciona outra cela - non pasa nada. Preme F9: a folla actualízase, a fórmula recalcúlase e o resaltado actualízase.

    Para que a folla de traballo se recalcule automaticamente sempre que o evento SelectionChange ocorre, pode colocar este código VBA sinxelo no módulo de código da súa folla de destino como se explica eno exemplo anterior:

    Private Sub Worksheet_SelectionChange( ByVal Target As Range) Target.Calculate End Sub

    O código obriga a recalcular o intervalo/célula seleccionado, o que á súa vez obriga a actualizar a función CELL e a reflectir o formato condicional. o cambio.

    Vantaxes : a diferenza do método anterior, este non afecta o formato existente que aplicaches manualmente.

    Inconvenientes : pode empeorar o rendemento de Excel.

    • Para que funcione o formato condicional, cómpre forzar a Excel a volver calcular a fórmula en cada cambio de selección (xa sexa manualmente coa tecla F9 ou automaticamente con VBA). Os recálculos forzados poden ralentizar o teu Excel. Dado que o noso código recalcula a selección en lugar dunha folla enteira, un efecto negativo é moi probable que só se note en libros de traballo moi grandes e complexos.
    • Dado que a función CELA está dispoñible en Excel 2007 e superior, o método non vai. t funciona en versións anteriores.

    Destaca a fila e columna seleccionadas mediante o formato condicional e VBA

    No caso de que o método anterior ralentice considerablemente o teu libro de traballo, podes abordar a tarefa de forma diferente; de recalcular unha folla de cálculo en cada movemento do usuario, obtén o número de fila/columna activa coa axuda de VBA e, a continuación, sirva ese número á función ROW() ou COLUMN() mediante fórmulas de formato condicional.

    Para lograr isto,aquí tes os pasos que debes seguir:

    1. Engade unha nova folla en branco ao teu libro de traballo e ponlle o nome Folla de axuda . O único propósito desta folla é almacenar dous números que representan a fila e a columna que conteñen unha cela seleccionada, para que poida ocultar a folla con seguridade nun momento posterior.
    2. Insira o VBA de abaixo na xanela de código da folla de traballo. onde desexa implementar o resaltado. Para obter instrucións detalladas, consulte o noso primeiro exemplo. Private Sub Worksheet_SelectionChange( ByVal Target As Range) Application.ScreenUpdating = False Worksheets( "Helper Sheet" ).Cells(2, 1) = Target.Row Worksheets( "Helper Sheet" ).Cells(2, 2) = Target.Column Application.ScreenUpdating = True End Sub

      O código anterior coloca as coordenadas da fila e columna activas na folla chamada "Folla de axuda". Se nomeou a súa folla de forma diferente no paso 1, cambie o nome da folla de traballo no código en consecuencia. O número de fila escríbese en A2 e o número de columna en B2.

    3. Na súa folla de traballo de destino, seleccione todo o conxunto de datos e cree unha regra de formato condicional coas fórmulas seguintes. A guía paso a paso ofrécese no exemplo anterior.

    E agora, imos cubrir os tres casos de uso principais en detalle.

    Como destacar a fila activa

    Para resaltar a fila onde está situado o cursor neste momento, configure unha regra de formato condicional con istofórmula:

    =ROW()='Helper Sheet'!$A$2

    Como resultado, o usuario pode ver claramente que fila está seleccionada actualmente:

    Como resaltar a columna activa

    Para resaltar a columna seleccionada, introduza o número de columna á función COLUMNA mediante esta fórmula:

    =COLUMN()='Helper Sheet'!$B$2

    Agora, unha columna resaltada permíteche ler de forma cómoda e sen esforzo datos verticais centrándote completamente nela.

    Como resaltar a fila e a columna activas

    Para que a fila e a columna seleccionadas sexan sombreadas automaticamente na mesma cor, combine as funcións ROW() e COLUMN() nunha soa fórmula:

    =OR(ROW()='Helper Sheet'!$A$2, COLUMN()='Helper Sheet'!$B$2)

    Os datos relevantes son inmediatamente enfocados, para que poida evitar a súa lectura incorrecta.

    Vantaxes : rendemento optimizado; funciona en todas as versións de Excel

    Inconvenientes : a configuración máis longa

    É así como resaltar a columna e a fila dunha cela seleccionada en Excel. Grazas por ler e espero verte no noso blog a vindeira semana!

    Caderno de prácticas para descargar

    Destacar fila e columna activas (ficheiro .xlsm)

    Michael Brown é un entusiasta da tecnoloxía dedicada á súa paixón por simplificar procesos complexos mediante ferramentas de software. Con máis dunha década de experiencia na industria tecnolóxica, perfeccionou as súas habilidades en Microsoft Excel e Outlook, así como en Follas de cálculo e Documentos de Google. O blog de Michael está dedicado a compartir o seu coñecemento e experiencia con outros, proporcionando consellos e titoriais fáciles de seguir para mellorar a produtividade e a eficiencia. Tanto se es un profesional experimentado como un principiante, o blog de Michael ofrece valiosas ideas e consellos prácticos para sacar o máximo proveito destas ferramentas de software esenciais.