Excel: comptar cel·les que contenen text específic (concordança exacta i parcial)

  • Comparteix Això
Michael Brown

El tutorial mostra com comptar el nombre de cel·les amb un text determinat a Excel. Trobareu exemples de fórmules per a la concordança exacta, la concordança parcial i les cel·les filtrades.

La setmana passada vam veure com comptar cel·les amb text a Excel, és a dir, totes les cel·les amb qualsevol text. Quan analitzeu grans blocs d'informació, és possible que també vulgueu saber quantes cel·les contenen text específic. Aquest tutorial explica com fer-ho d'una manera senzilla.

    Com comptar cel·les amb text específic a Excel

    Microsoft Excel té una funció especial per comptar cel·les condicionalment, la funció COUNTIF. Tot el que heu de fer és proporcionar la cadena de text de destinació a l'argument criteri .

    Aquí teniu una fórmula genèrica d'Excel per comptar el nombre de cel·les que contenen text específic:

    COUNTIF(interval, " text")

    L'exemple següent ho mostra en acció. Suposant que teniu una llista d'identificadors d'elements a A2:A10 i voleu comptar el nombre de cel·les amb un identificador particular, digueu "AA-01". Escriviu aquesta cadena al segon argument i obtindreu aquesta fórmula senzilla:

    =COUNTIF(A2:A10, "AA-01")

    Per permetre als vostres usuaris comptar cel·les amb qualsevol text sense necessitat de modificar la fórmula, introduïu el text en una cel·la predefinida, per exemple D1, i proporcioneu la referència de la cel·la:

    =COUNTIF(A2:A10, D1)

    Nota. La funció COUNTIF d'Excel és insensible a majúscules , és a dir, no diferencia majúscules i minúscules. Per tractar majúscules i minúsculescaràcters de manera diferent, utilitzeu aquesta fórmula que distingeix entre majúscules i minúscules.

    Com comptar cel·les amb un text determinat (concordança parcial)

    La fórmula que es parla a l'exemple anterior coincideix exactament amb els criteris. Si hi ha almenys un caràcter diferent en una cel·la, per exemple un espai addicional al final, aquesta no serà una coincidència exacta i aquesta cel·la no es comptarà.

    Per trobar el nombre de les cel·les que contenen cert text com a part del seu contingut, utilitzeu caràcters comodins als vostres criteris, és a dir, un asterisc (*) que representi qualsevol seqüència o caràcters. Segons el vostre objectiu, una fórmula pot semblar a una de les següents.

    Comptar les cel·les que contenen text específic al inici :

    COUNTIF(interval, " text *")

    Comptar les cel·les que contenen cert text a qualsevol posició :

    COUNTIF(interval, "* text *")

    Per exemple, per trobar quantes cel·les de l'interval A2:A10 comencen amb "AA", utilitzeu aquesta fórmula:

    =COUNTIF(A2:A10, "AA*")

    Per obtenir el recompte de cel·les que contenen "AA" en qualsevol posició, utilitzeu aquesta un:

    =COUNTIF(A2:A10, "*AA*")

    Per fer que les fórmules siguin més dinàmiques, substituïu les cadenes codificades en dur per referències de cel·les.

    Per comptar les cel·les que comencen amb un text determinat:

    =COUNTIF(A2:A10, D1&"*")

    Per comptar cel·les amb un text determinat en qualsevol part:

    =COUNTIF(A2:A10, "*"&D1&"*")

    La captura de pantalla següent mostra els resultats:

    Comptar les cel·les que contenen text específic (distingeix entre majúscules i minúscules)

    En situació en què necessiteu diferenciarcaràcters en majúscules i minúscules, la funció COUNTIF no funcionarà. En funció de si cerqueu una coincidència exacta o parcial, haureu de crear una fórmula diferent.

    Fórmula que distingeix entre majúscules i minúscules per comptar cel·les amb text específic (concordança exacta)

    Per comptar el nombre de cel·les amb cert text que reconeix el cas del text, utilitzarem una combinació de les funcions SUMPRODUCT i EXACT:

    SUMPRODUCT(--EXACT(" text ", range ))

    Com funciona aquesta fórmula:

    • EXACTE compara cada cel·la de l'interval amb el text de mostra i retorna una matriu de valors VERDADERS i FALS, TRUE que representa coincidències exactes i FALSE totes les altres cel·les. Un guionet doble (anomenat unari doble ) obliga a TRUE i FALSE a 1 i 0.
    • SUMPRODUCT suma tots els elements de la matriu. Aquesta suma és el nombre d'1, que és el nombre de coincidències.

    Per exemple, per obtenir el nombre de cel·les a A2:A10 que contenen el text a D1 i manejar majúscules i minúscules com a diferents caràcters, utilitzeu aquesta fórmula:

    =SUMPRODUCT(--EXACT(D1, A2:A10))

    Fórmula que distingeix entre majúscules i minúscules per comptar cel·les amb text específic (concordança parcial)

    Per crear una fórmula que distingeix entre majúscules i minúscules que pot trobar una cadena de text d'interès a qualsevol lloc d'una cel·la, estem utilitzant 3 funcions diferents:

    SUMPRODUCT(--(ISNUMBER(FIND(" text ", rang ))))

    Com funciona aquesta fórmula:

    • La funció FIND distingeix entre majúscules i minúscules cercaper al text objectiu a cada cel·la de l'interval. Si té èxit, la funció retorna la posició del primer caràcter, en cas contrari, el #VALOR! error. Per motius de claredat, no necessitem saber la posició exacta, qualsevol número (a diferència de l'error) significa que la cel·la conté el text objectiu.
    • La funció ISNUMBER gestiona la matriu de números i errors retornats. mitjançant FIND i converteix els nombres a VERDADER i qualsevol altra cosa a FALS. Un doble unari (--) obliga els valors lògics a uns i zeros.
    • SUMPRODUCT suma la matriu d'1 i 0 i retorna el recompte de cel·les que contenen el text especificat com a part del seu contingut.

    Per provar la fórmula amb dades de la vida real, busquem quantes cel·les a A2:A10 contenen l'entrada de subcadena a D1:

    =SUMPRODUCT(--(ISNUMBER(FIND(D1, A2:A10))))

    I això retorna un recompte de 3 (cel·les A2, A3 i A6):

    Com comptar les cel·les filtrades amb text específic

    Per comptar elements visibles en una llista filtrada, haureu d'utilitzar una combinació de 4 o més funcions segons si voleu una coincidència exacta o parcial. Per facilitar el seguiment dels exemples, primer donem una ullada a les dades d'origen.

    Suposant que teniu una taula amb IDs de comanda a la columna B i Quantitat a la columna C com es mostra a la imatge següent. De moment, només esteu interessats en quantitats superiors a 1 i heu filtrat la vostra taula en conseqüència. ElLa pregunta és: com es compten les cel·les filtrades amb un identificador particular?

    Fórmula per comptar les cel·les filtrades amb un text específic (concordança exacta)

    Per comptar les cel·les filtrades A les cel·les el contingut de les quals coincideix exactament amb la cadena de text de mostra, utilitzeu una de les fórmules següents:

    =SUMPRODUCT(SUBTOTAL(103, INDIRECT("A"&ROW(A2:A10))), --(B2:B10=F1))

    =SUMPRODUCT(SUBTOTAL(103, OFFSET(A2:A10, ROW(A2:A10) - MIN(ROW(A2:A10)),,1)), --(B2:B10=F1))

    On F1 és el text de mostra i B2:B10 són les cel·les per comptar.

    Com funcionen aquestes fórmules:

    En el nucli d'ambdues fórmules, feu 2 comprovacions:

    1. Identifica les files visibles i ocultes. Per a això, utilitzeu la funció SUBTOTAL amb l'argument function_num establert en 103. Per proporcionar totes les referències de cel·les individuals a SUBTOTAL, utilitzeu INDIRECT (a la primera fórmula) o una combinació de OFFSET, ROW i MIN. (a la segona fórmula). Com que volem localitzar files visibles i ocultes, realment no importa a quina columna fer referència (A en el nostre exemple). El resultat d'aquesta operació és una matriu d'1 i 0 on els uns representen files visibles i zeros, files ocultes.
    2. Cerca cel·les que continguin text donat. Per a això, compareu el text de mostra (F1) amb el rang de cel·les (B2:B10). El resultat d'aquesta operació és una matriu de valors TRUE i FALSE, que es coaccionen a 1 i 0 amb l'ajuda de l'operador unari doble.

    Finalment, la funció SUMAPRODUCTE multiplica els elements dels dos. matrius a les mateixes posicions i després suma la matriu resultant.Com que la multiplicació per zero dóna zero, només les cel·les que tenen 1 a les dues matrius tenen 1 a la matriu final. La suma d'1 és el nombre de cel·les filtrades que contenen el text especificat.

    Fórmula per comptar les cel·les filtrades amb text específic (concordança parcial)

    Per comptar les cel·les filtrades que contenen cert text com a part de el contingut de la cel·la, modifiqueu les fórmules anteriors de la manera següent. En lloc de comparar el text de mostra amb l'interval de cel·les, cerqueu el text objectiu utilitzant ISNUMBER i FIND tal com s'explica en un dels exemples anteriors:

    =SUMPRODUCT(SUBTOTAL(103, INDIRECT("A"&ROW(A2:A10))), --(ISNUMBER(FIND(F1, B2:B10))))

    =SUMPRODUCT(SUBTOTAL(103, OFFSET(A2:A10, ROW(A2:A10) - MIN(ROW(A2:A10)),,1)), --(ISNUMBER(FIND(F1, B2:B10))))

    Com a resultat, les fórmules localitzaran una cadena de text determinada en qualsevol posició d'una cel·la:

    Nota. La funció SUBTOTAL amb 103 a l'argument núm_funció , identifica totes les cel·les amagades, filtrades i ocultes manualment. Com a resultat, les fórmules anteriors només compten cel·les visibles , independentment de com s'amaguessin les cel·les invisibles. Per excloure només les cel·les filtrades però incloure les ocultes manualment, utilitzeu 3 per a function_num .

    Així és com es compta el nombre de cel·les amb un text determinat a Excel. Us agraeixo la lectura i espero veure-us al nostre blog la setmana vinent!

    Descàrregues disponibles

    Fórmules d'Excel per comptar cel·les amb un text determinat

    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.