Com ressaltar la fila i la columna actives a Excel

  • Comparteix Això
Michael Brown

En aquest tutorial, aprendreu 3 maneres diferents de ressaltar dinàmicament la fila i la columna d'una cel·la seleccionada a Excel.

Quan visualitzeu un full de treball gran durant molt de temps, podreu eventualment pot perdre la pista d'on està el cursor i quines dades esteu mirant. Per saber exactament on esteu en qualsevol moment, feu que Excel ressalti automàticament la fila i la columna actives per a vosaltres! Naturalment, el ressaltat hauria de ser dinàmic i canviar cada vegada que seleccioneu una altra cel·la. Bàsicament, això és el que pretenem aconseguir:

    Resalta automàticament la fila i la columna de la cel·la seleccionada amb VBA

    Això L'exemple mostra com podeu ressaltar una columna i una fila actives amb programació amb VBA. Per a això, utilitzarem l'esdeveniment SelectionChange de l'objecte Full de treball .

    Primer, esborreu el color de fons de totes les cel·les del full configurant el ColorIndex a 0. A continuació, ressalteu tota la fila i la columna de la cel·la activa establint la seva propietat ColorIndex al número d'índex del color desitjat.

    Private Sub Worksheet_SelectionChange ( ByVal Target As Range) Si Target.Cells.Count > 1 A continuació, sortiu de la subaplicació.ScreenUpdating = Fals 'Esborra el color de totes les cel·les Cells.Interior.ColorIndex = 0 Amb l'objectiu 'Resalta la fila i la columna de la cel·la seleccionada .EntireRow.Interior.ColorIndex = 38.EntireColumn.Interior.ColorIndex = 24 Finalitzar amb Application.ScreenUpdating = True End Sub

    Personalització del codi

    Si voleu personalitzar el codi segons les vostres necessitats, aquests petits consells poden ser útils:

    • El nostre codi d'exemple utilitza dos colors diferents que es mostren al gif anterior: índex de color 38 per a la fila i 24 per a la columna. Per canviar el color de ressaltat , només cal que substituïu-los amb els codis ColorIndex que trieu.
    • Per aconseguir que la fila i la columna tinguin el color de la mateixa manera , feu servir el mateix número d'índex de color per a tots dos.
    • Per ressaltar només la fila activa , elimina o comenta aquesta línia: .EntireColumn.Interior.ColorIndex = 24
    • Per ressaltar només la columna activa , elimina o comenta aquesta línia: .EntireRow.Interior.ColorIndex = 38

    Com afegir el codi al vostre full de treball

    Per executar el codi en silenci en segon pla d'un full de treball específic, heu d'inserir-lo a la finestra de codi que pertany a aquest full de treball, no al mòdul normal. Per fer-ho, seguiu aquests passos:

    1. Al vostre llibre de treball, premeu Alt + F11 per accedir a l'editor de VBA.
    2. A l'Explorador de projectes de l'esquerra, podeu" Veureu una llista de tots els llibres de treball oberts i els seus fulls de treball. Si no el veieu, feu servir la drecera Ctrl + R per mostrar la finestra de l'Explorador de projectes.
    3. Cerqueu el llibre de treball de destinació. En el seu Microsoft ExcelObjectes , feu doble clic al full al qual voleu aplicar el ressaltat. En aquest exemple, és Full 1 .
    4. A la finestra Codi de la dreta, enganxeu el codi anterior.
    5. Deseu el fitxer com a Llibre de treball amb macros (.xlsm).

    Avantatges : tot es fa al backend; no calen ajustaments/personalitzacions per part de l'usuari; funciona en totes les versions d'Excel.

    Inconvenients : hi ha dos inconvenients essencials que fan que aquesta tècnica sigui inaplicable en determinades circumstàncies:

    • El codi esborra el fons. colors de totes les cel·les del full de treball. Si teniu cel·les de colors, no utilitzeu aquesta solució perquè es perdrà el format personalitzat.
    • En executar aquest codi bloqueja la funcionalitat de desfer del full i no podreu desfer una acció errònia prement Ctrl + Z .

    Ressalteu la fila i la columna actives sense VBA

    El millor que podeu obtenir per ressaltar la fila seleccionada i / o columna sense VBA és el format condicional d'Excel. Per configurar-lo, seguiu aquests passos:

    1. Seleccioneu el vostre conjunt de dades en què s'ha de ressaltar.
    2. A la pestanya Inici , a la secció Estils grup, feu clic a Nova regla .
    3. Al quadre de diàleg Nova regla de format , trieu Utilitza una fórmula per determinar quines cel·les format .
    4. A la Format els valors on aquesta fórmulaés cert , introduïu una d'aquestes fórmules:

      Per ressaltar fila activa :

      =CELL("row")=ROW()

      Per ressaltar columna activa :

      =CELL("col")=COLUMN()

      Per ressaltar fila i columna actives :

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

      Totes les fórmules fan ús de la funció CELL per retorna el número de fila/columna de la cel·la seleccionada.

    5. Feu clic al botó Format , canvieu a la pestanya Emplenar i seleccioneu el color que us agradi.
    6. Feu clic a D'acord dues vegades per tancar-lo. ambdues finestres de diàleg.

    Si creieu que necessiteu instruccions més detallades, consulteu Com crear una regla de format condicional basada en fórmules.

    Per a aquest exemple, hem optat per l'OR fórmula per ombrejar la columna i la fila del mateix color. Això requereix menys feina i és adequat per a la majoria dels casos.

    Desafortunadament, aquesta solució no és tan agradable com la de VBA perquè requereix recalcular el full manualment (prem la tecla F9). Per defecte, Excel torna a calcular un full de treball només després d'introduir dades noves o editar l'existent, però no quan canvia la selecció. Per tant, seleccioneu una altra cel·la; no passa res. Premeu F9: el full s'actualitza, la fórmula es torna a calcular i el ressaltat s'actualitza.

    Per obtenir que el full de treball es torni a calcular automàticament sempre que l'esdeveniment SelectionChange Si es produeix, podeu col·locar aquest codi VBA senzill al mòdul de codi del vostre full de destinació tal com s'explica al'exemple anterior:

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

    El codi obliga a tornar a calcular l'interval/cel·la seleccionat, que al seu torn obliga a actualitzar la funció CELL i reflectir el format condicional el canvi.

    Avantatges : a diferència del mètode anterior, aquest no afecta el format existent que heu aplicat manualment.

    Inconvenients : pot ser empitjorarà el rendiment d'Excel.

    • Per tal que el format condicional funcioni, heu de forçar Excel a tornar a calcular la fórmula en cada canvi de selecció (ja sigui manualment amb la tecla F9 o automàticament amb VBA). Els recàlculs forçats poden alentir el vostre Excel. Com que el nostre codi torna a calcular la selecció en lloc d'un full sencer, un efecte negatiu és molt probable que només es noti en llibres de treball molt grans i complexos.
    • Com que la funció CELL està disponible a Excel 2007 i versions posteriors, el mètode no. no funcionen en versions anteriors.

    Ressalteu la fila i la columna seleccionades amb format condicional i VBA

    En cas que el mètode anterior alentiri considerablement el vostre llibre de treball, podeu enfocar la tasca de manera diferent; de recalcular un full de treball en cada moviment de l'usuari, obteniu el número de fila/columna activa amb l'ajuda de VBA i, a continuació, publiqueu aquest número a la funció ROW() o COLUMN() mitjançant fórmules de format condicional.

    Per aconseguir això,aquí teniu els passos que heu de seguir:

    1. Afegiu un nou full en blanc al vostre llibre de treball i anomeneu-lo Full d'ajuda . L'únic propòsit d'aquest full és emmagatzemar dos números que representen la fila i la columna que conté una cel·la seleccionada, de manera que podeu ocultar el full amb seguretat en un moment posterior.
    2. Inseriu el VBA a continuació a la finestra de codi del full de treball. on voleu implementar el ressaltat. Per obtenir instruccions detallades, consulteu el nostre primer exemple. 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

      El codi anterior col·loca les coordenades de la fila i la columna actives al full anomenat "Full d'ajuda". Si heu posat un nom diferent al vostre full al pas 1, canvieu el nom del full de treball al codi en conseqüència. El número de fila s'escriu a A2 i el número de columna a B2.

    3. Al full de treball de destinació, seleccioneu tot el conjunt de dades i creeu una regla de format condicional amb les fórmules següents. La guia pas a pas es proporciona a l'exemple anterior.

    I ara, cobrim els tres casos d'ús principals amb detall.

    Com ressaltar la fila activa

    Per ressaltar la fila on es troba el cursor en aquest moment, configureu una regla de format condicional amb aquestafórmula:

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

    Com a resultat, l'usuari pot veure clarament quina fila està seleccionada actualment:

    Com ressaltar la columna activa

    Per ressaltar la columna seleccionada, introduïu el número de columna a la funció COLUMN mitjançant aquesta fórmula:

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

    Ara, una columna destacada us permet llegir còmodament i sense esforç dades verticals centrant-s'hi completament.

    Com ressaltar la fila i la columna actives

    Per aconseguir que la fila i la columna seleccionades s'ombregin automàticament amb el mateix color, combineu les funcions ROW() i COLUMN() en una fórmula:

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

    Les dades rellevants es posen de manifest immediatament, de manera que podeu evitar una lectura errònia.

    Avantatges : rendiment optimitzat; funciona en totes les versions d'Excel

    Inconvenients : la configuració més llarga

    Així és com ressaltar la columna i la fila d'una cel·la seleccionada a Excel. Us agraeixo la lectura i esperem veure-us al nostre bloc la setmana vinent!

    Quader de pràctiques per descarregar

    Destacar fila i columna actives (fitxer .xlsm)

    Michael Brown és un entusiasta de la tecnologia dedicat amb una passió per simplificar processos complexos mitjançant eines de programari. Amb més d'una dècada d'experiència en la indústria tecnològica, ha perfeccionat les seves habilitats en Microsoft Excel i Outlook, així com en Google Sheets i Docs. El bloc de Michael es dedica a compartir els seus coneixements i experiència amb altres persones, oferint consells i tutorials fàcils de seguir per millorar la productivitat i l'eficiència. Tant si sou un professional experimentat com si sou un principiant, el bloc de Michael ofereix valuoses idees i consells pràctics per treure el màxim profit d'aquestes eines de programari essencials.