Interval denominat dinàmic d'Excel: com crear i utilitzar

  • Comparteix Això
Michael Brown

En aquest tutorial, aprendràs a crear un interval de nom dinàmic a Excel i a utilitzar-lo en fórmules per incloure dades noves als càlculs de manera automàtica.

A la setmana passada. tutorial, vam analitzar diferents maneres de definir un interval de nom estàtic a Excel. Un nom estàtic sempre fa referència a les mateixes cel·les, el que significa que hauríeu d'actualitzar la referència de l'interval manualment cada vegada que afegiu dades noves o suprimiu dades existents.

Si esteu treballant amb un conjunt de dades que canvia contínuament, és possible que vulgueu fes dinàmic el teu interval amb nom perquè s'ampliï automàticament per adaptar-se a entrades o contractes recentment afegits per excloure les dades eliminades. Més endavant, en aquest tutorial, trobareu una guia detallada pas a pas sobre com fer-ho.

    Com crear un rang de nom dinàmic a Excel

    Per Per començar, construïm un rang de nom dinàmic format per una sola columna i un nombre variable de files. Per fer-ho, seguiu aquests passos:

    1. A la pestanya Fórmula , al grup Noms definits , feu clic a Defineix nom . O bé, premeu Ctrl + F3 per obrir el gestor de noms d'Excel i feu clic al botó Nou... .
    2. En qualsevol cas, s'obrirà el quadre de diàleg Nou nom , on especifiqueu els detalls següents:
      • Al quadre Nom , escriviu el nom del vostre rang dinàmic.
      • Al menú desplegable Àmbit , configureu el l'abast del nom. En la majoria es recomana Llibre de treball (per defecte).casos.
      • Al quadre Es refereix a , introduïu la fórmula OFFSET COUNTA o INDEX COUNTA.
    3. Feu clic a D'acord. Fet!

    A la captura de pantalla següent, definim un rang dinàmic amb nom elements que inclou totes les cel·les amb dades de la columna A, excepte la fila de la capçalera. :

    Fórmula OFFSET per definir un rang de nom dinàmic d'Excel

    La fórmula genèrica per fer un interval de nom dinàmic a Excel és la següent:

    OFFSET ( primera_cel·la, 0, 0, COUNTA( columna), 1)

    On:

    • primera_cel·la : la primera element que s'ha d'incloure a l'interval anomenat, per exemple $A$2.
    • columna : una referència absoluta a la columna com $A:$A.

    Al nucli d'aquesta fórmula, utilitzeu la funció COUNTA per obtenir el nombre de cel·les no en blanc a la columna d'interès. Aquest nombre va directament a l'argument height de la funció OFFSET(reference, rows, cols, [height], [width]) que li indica quantes files cal tornar.

    Més enllà d'això, és una fórmula de desplaçament ordinària, on:

    • referència és el punt de partida des del qual es basa el desplaçament (primera_cel·la).
    • files i cols són 0, ja que no hi ha columnes ni files per compensar.
    • amplada és igual a 1 columna.

    Per exemple, per crear un interval de nom dinàmic per a la columna A del full 3, començant a la cel·la A2, utilitzem aquesta fórmula:

    =OFFSET(Sheet3!$A$2, 0, 0, COUNTA(Sheet3!$A:$A), 1)

    Nota. Si estàs definintun rang dinàmic al full de treball actual, no cal que inclogueu el nom del full a les referències, Excel ho farà automàticament. Si esteu creant un interval per a un altre full, prefixeu la cel·la o la referència de l'interval amb el nom del full seguit del signe d'exclamació (com a l'exemple de fórmula anterior).

    Fórmula INDEX per crear un interval amb nom dinàmic a Excel

    Una altra manera de crear un rang dinàmic d'Excel és utilitzar COUNTA en combinació amb la funció INDEX.

    first_cell:INDEX( column,COUNTA( columna))

    Aquesta fórmula consta de dues parts:

    • A la part esquerra de l'operador d'interval (:), poseu la referència inicial codificada com $A$2 .
    • A la dreta, utilitzeu la funció INDEX(array, row_num, [column_num]) per esbrinar la referència final. Aquí, proporcioneu tota la columna A per a la matriu i utilitzeu COUNTA per obtenir el número de fila (és a dir, el nombre de cel·les sense entrada a la columna A).

    Per al nostre conjunt de dades de mostra (vegeu el captura de pantalla anterior), la fórmula és el següent:

    =$A$2:INDEX($A:$A, COUNTA($A:$A))

    Com que hi ha 5 cel·les no en blanc a la columna A, inclosa una capçalera de columna, COUNTA retorna 5. En conseqüència, INDEX retorna $A $5, que és l'última cel·la utilitzada a la columna A (normalment una fórmula d'índex retorna un valor, però l'operador de referència l'obliga a retornar una referència). I perquè hem establert $A$2 com a punt de partida, el resultat final dela fórmula és l'interval $A$2:$A$5.

    Per provar l'interval dinàmic acabat de crear, podeu fer que COUNTA recuperi el recompte d'elements:

    =COUNTA(Items)

    Si tot es fa correctament, el resultat de la fórmula canviarà un cop afegiu o suprimiu elements a/de la llista:

    Nota. Les dues fórmules comentades anteriorment produeixen el mateix resultat, però hi ha una diferència de rendiment que hauríeu de tenir en compte. OFFSET és una funció volàtil que es recalcula amb cada canvi a un full. En màquines modernes potents i conjunts de dades de mida raonable, això no hauria de ser un problema. En màquines de poca capacitat i grans conjunts de dades, això pot alentir el vostre Excel. En aquest cas, és millor que utilitzeu la fórmula INDEX per crear un rang amb nom dinàmic.

    Com fer un rang dinàmic bidimensional a Excel

    Per crear un rang amb nom bidimensional, on no només el nombre de files sinó també el nombre de columnes és dinàmic, utilitzeu la modificació següent de la fórmula INDEX COUNTA:

    primera_cel·la:INDEX($1:$1048576, COUNTA( primera_columna), COUNTA( first_row)))

    En aquesta fórmula, teniu dues funcions COUNTA per obtenir l'última fila no buida i l'última columna no buida ( row_num i column_num arguments de la funció INDEX, respectivament). A l'argument matriu , alimenteu tot el full de treball (1048576 files a Excel 2016 - 2007; 65535 files a Excel 2003 i inferior).

    I ara,definim un rang més dinàmic per al nostre conjunt de dades: l'interval anomenat vendes que inclou xifres de vendes durant 3 mesos (de gener a març) i s'ajusta automàticament a mesura que afegeixes nous elements (files) o mesos (columnes) a la taula.

    Amb les dades de vendes comencen a la columna B, fila 2, la fórmula pren la forma següent:

    =$B$2:INDEX($1:$1048576,COUNTA($B:$B),COUNTA($2:$2))

    Per assegurar-vos que el vostre rang dinàmic funciona com se suposa, introduïu les fórmules següents en algun lloc del full:

    =SUM(sales)

    =SUM(B2:D5)

    Com podeu veure a la captura de pantalla següent , ambdues fórmules retornen el mateix total. La diferència es revela en el moment en què afegiu noves entrades a la taula: la primera fórmula (amb l'interval dinàmic anomenat) s'actualitzarà automàticament, mentre que la segona s'haurà d'actualitzar manualment amb cada canvi. Això fa una gran diferència, eh?

    Com utilitzar intervals de nom dinàmics a les fórmules d'Excel

    A les seccions anteriors d'aquest tutorial, ja heu vist un parell de fórmules senzilles que utilitzen rangs dinàmics. Ara, provem d'aconseguir alguna cosa més significativa que mostri el valor real d'un rang amb nom dinàmic d'Excel.

    Per a aquest exemple, prendrem la fórmula clàssica INDEX MATCH que realitza Vlookup a Excel:

    ÍNDEX ( interval_de_retorn, COINCORDA ( valor_de_cerca, interval_de_cerca, 0))

    ...i mireu com pot fer que la fórmula sigui encara més potent amb l'ús derangs de nom dinàmics.

    Tal com es mostra a la captura de pantalla anterior, estem intentant crear un tauler, on l'usuari introdueix un nom d'element a H1 i obté les vendes totals d'aquest article a H2. La nostra taula de mostra creada amb finalitats de demostració conté només 4 elements, però als vostres fulls de la vida real hi pot haver centenars i fins i tot milers de files. A més, es poden afegir nous elements diàriament, de manera que l'ús de referències no és una opció, perquè hauríeu d'actualitzar la fórmula una i altra vegada. Sóc massa mandrós per això! :)

    Per forçar que la fórmula s'ampliï automàticament, definirem 3 noms: 2 rangs dinàmics i 1 cel·la amb nom estàtica:

    Range_de_cerca: =$A$2:INDEX($ A:$A, COUNTA($A:$A))

    Rang_retorn: =$E$2:INDEX($E:$E, COUNTA($E:$E))

    Valor_de_cerca: =$H$1

    Nota. L'Excel afegirà el nom del full actual a totes les referències, de manera que abans de crear els noms assegureu-vos d'obrir el full amb les vostres dades d'origen.

    Ara, comenceu a escriure la fórmula a H1. Quan es tracti del primer argument, escriviu uns quants caràcters del nom que voleu utilitzar i Excel mostrarà tots els noms coincidents disponibles. Feu doble clic al nom adequat i Excel l'inserirà immediatament a la fórmula:

    La fórmula completada és la següent:

    =INDEX(Return_range, MATCH(Lookup_value, Lookup_range, 0))

    I funciona perfectament!

    Tan aviat com afegiu nous registres a la taula, s'inclouran als vostres càlculs auna vegada, sense haver de fer ni un sol canvi a la fórmula! I si mai necessiteu portar la fórmula a un altre fitxer d'Excel, simplement creeu els mateixos noms al llibre de destinació, copieu/enganxeu la fórmula i feu que funcioni immediatament.

    Consell. A més de fer que les fórmules siguin més duradores, els intervals dinàmics són útils per crear llistes desplegables dinàmiques.

    Així és com es crea i s'utilitza intervals amb nom dinàmics a Excel. Per veure amb més detall les fórmules tractades en aquest tutorial, us convidem a descarregar el nostre exemple de llibre de treball d'Excel Dynamic Named Range. Us agraeixo la lectura i esperem veure-us al nostre blog la setmana vinent!

    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.