Как да преброите символите в Excel: общо или конкретни символи в клетка или диапазон

  • Споделя Това
Michael Brown

В урока е обяснено как да броите символи в Excel. Ще научите формулите за получаване на общия брой символи в даден диапазон и за броене само на определени символи в дадена клетка или в няколко клетки.

В предишния урок се запознахме с функцията LEN на Excel, която позволява да се пресметне общият брой символи в дадена клетка.

Формулата LEN е полезна сама по себе си, но във връзка с други функции, като SUM, SUMPRODUCT и SUBSTITUTE, тя може да се справи с много по-сложни задачи. По-нататък в този урок ще разгледаме отблизо няколко основни и разширени формули за броене на символи в Excel.

    Как да преброим всички символи в даден диапазон

    Когато става въпрос за преброяване на общия брой символи в няколко клетки, веднага ви идва наум решението да получите броя на символите за всяка клетка и след това да съберете тези числа:

    =LEN(A2)+LEN(A3)+LEN(A4)

    Или

    =SUM(LEN(A2),LEN(A3),LEN(A4))

    Горните формули могат да работят добре за малък диапазон. За да преброим общия брой символи в по-голям диапазон, е по-добре да измислим нещо по-компактно, например функцията SUMPRODUCT, която умножава масивите и връща сумата на произведенията.

    Ето общата формула на Excel за преброяване на символите в даден диапазон:

    =SUMPRODUCT(LEN( обхват ))

    И вашата формула в реалния живот може да изглежда по следния начин:

    =SUMPRODUCT(LEN(A1:A7))

    Друг начин за преброяване на символите в даден диапазон е да се използва функцията LEN в комбинация със SUM:

    =SUM(LEN(A1:A7))

    За разлика от SUMPRODUCT функцията SUM не изчислява масиви по подразбиране и трябва да натиснете Ctrl + Shift + Enter, за да я превърнете във формула за масиви.

    Както е показано на следващата екранна снимка, формулата SUM връща същия общ брой символи:

    Как работи тази формула за преброяване на символите в диапазона

    Това е една от най-простите формули за преброяване на символите в Excel. Функцията LEN изчислява дължината на символния низ за всяка клетка в посочения диапазон и ги връща като масив от числа. След това SUMPRODUCT или SUM сумира тези числа и връща общия брой символи.

    В горния пример се сумира масив от 7 числа, които представляват дължините на низовете в клетките от A1 до A7:

    Забележка: Моля, обърнете внимание, че функцията LEN на Excel отчита абсолютно всички символи във всяка клетка , включително букви, цифри, препинателни знаци, специални символи и всички интервали (начални, крайни и между думи).

    Как да преброим определени символи в клетка

    Понякога вместо да преброите всички символи в дадена клетка, може да се наложи да преброите само срещите на определена буква, число или специален символ.

    За да преброите колко пъти даден символ се появява в клетка, използвайте функцията LEN заедно със SUBSTITUTE:

    =LEN( клетка )-LEN(SUBSTITUTE( клетка , символ ,""))

    За да разберете по-добре формулата, разгледайте следния пример.

    Да предположим, че поддържате база данни с доставени артикули, в която всеки тип артикул има свой уникален идентификатор. Всяка клетка съдържа няколко артикула, разделени със запетая, интервал или друг разделител. Задачата е да преброите колко пъти даден уникален идентификатор се появява във всяка клетка.

    Ако приемем, че списъкът на доставените елементи е в колона B (започваща с B2) и броим броя на появите на "A", формулата е следната:

    =LEN(B2)-LEN(SUBSTITUTE(B2, "A",""))

    Как работи тази формула за броене на символи в Excel

    За да разберем логиката на формулата, нека я разделим на по-малки части:

    • Първо пребройте общата дължина на низа в B2:

    LEN(B2)

  • След това използвате функцията SUBSTITUTE, за да премахнете всички срещания на буквата " A " в B2, като го замени с празен низ (""):
  • SUBSTITUTE(B2, "A","")

  • След това преброявате дължината на низа без " A " символ:
  • LEN(SUBSTITUTE(B2, "A",""))

  • Накрая изваждате дължината на низа без " A " от низа с обща дължина.
  • В резултат на това получавате броя на "премахнатите" символи, който е равен на общия брой на появяванията на този символ в клетката.

    Вместо да посочвате символа, който искате да преброите, във формулата, можете да го въведете в някоя клетка и след това да направите препратка към тази клетка във формулата. По този начин потребителите ви ще могат да преброят появата на всеки друг символ, който въведат в тази клетка, без да нарушават формулата ви:

    Забележка: Функцията SUBSTITUTE на Excel е функция, която отчита малки и големи букви, поради което горната формула също отчита малки и големи букви. Например в горната снимка на екрана клетка B3 съдържа 3 срещания на "A" - две с главни букви и едно с малки. Формулата отчита само главните букви, тъй като сме подали "A" на функцията SUBSTITUTE.

    Формула на Excel за броене на определени символи в клетка, без да се отчитат регистрите

    Ако се нуждаете от преброяване на символите без отчитане на големите букви, вградете функцията UPPER в SUBSTITUTE, за да преобразувате посочения символ в главни букви, преди да стартирате заместването. И не забравяйте да въведете главния символ във формулата.

    Например, за да преброите елементите "A" и "a" в клетка B2, използвайте тази формула:

    =LEN(B2)-LEN(SUBSTITUTE(UPPER(B2), "A","))

    Друг начин е да се използват вложени функции Substitute:

    =LEN(B2)-LEN(SUBSTITUTE(SUBSTITUTE (B2, "A",""), "a","")

    Както можете да видите на снимката по-долу, и двете формули безпроблемно отчитат появата на главни и малки букви на зададения символ:

    В някои случаи може да ви се наложи да преброите много различни символи в дадена таблица, но може да не искате да променяте формулата всеки път. В този случай вложете една функция Substitute в друга, въведете символа, който искате да преброите, в някоя клетка (D1 в този пример) и преобразувайте стойността на тази клетка в главни и малки букви, като използвате функциите UPPER и LOWER:

    =LEN(B2)-LEN(SUBSTITUTE(SUBSTITUTE(B2, UPPER($D$1), ""), LOWER($D$1),""))

    Алтернативно, преобразувайте както изходната клетка, така и клетката, съдържаща символа, в главни или малки букви. Например:

    =LEN(B2)-LEN(SUBSTITUTE(UPPER(B2), UPPER($C$1),""))

    Предимството на този подход е, че независимо от това дали в препратената клетка е въведен главен или малък знак, вашата формула за преброяване на знаци без значение на размера на буквите ще върне правилния брой:

    Преброяване на срещания на определен текст или подниз в клетка

    Ако искате да преброите колко пъти един специфична комбинация от знаци (т.е. определен текст или подниз) се появява в дадена клетка, например "A2" или "SS", след това разделете броя на символите, върнати от горните формули, на дължината на подниза.

    Чувствителност на буквите формула:

    =(LEN(B2)-LEN(SUBSTITUTE(B2, $C$1,"")))/LEN($C$1)

    Без значение на размера на буквите формула:

    =(LEN(B2)-LEN(SUBSTITUTE(LOWER(B2),LOWER($C$1),"")))/LEN($C$1)

    Където B2 е клетката, съдържаща целия текстов низ, а C1 е текстът (поднизът), който искате да преброите.

    За подробно обяснение на формулата вижте Как да преброим определен текст/ думи в клетка.

    Как да преброите определен(и) символ(и) в даден диапазон

    След като вече знаете формулата на Excel за броене на символи в клетка, може да искате да я подобрите допълнително, за да разберете колко пъти определен символ се появява в даден диапазон. За тази цел ще вземем формулата LEN на Excel за броене на определен символ в клетка, разгледана в предишния пример, и ще я поставим във функцията SUMPRODUCT, която може да обработва масиви:

    SUMPRODUCT(LEN( обхват )-LEN(SUBSTITUTE( обхват , символ ,"")))

    В този пример формулата има следната форма:

    =SUMPRODUCT(LEN(B2:B8)-LEN(SUBSTITUTE(B2:B8, "A",")))

    А ето и друга формула за преброяване на символите в обхвата на Excel:

    =SUM(LEN(B2:B8)-LEN(SUBSTITUTE(B2:B8, "A",")))

    В сравнение с първата формула най-очевидната разлика е, че се използва SUM вместо SUMPRODUCT. Друга разлика е, че се изисква натискане на Ctrl + Shift + Enter, защото за разлика от SUMPRODUCT, която е предназначена за обработка на масиви, SUM може да обработва масиви само когато се използва в формула за масив .

    Ако не искате да кодирате символа във формулата, можете, разбира се, да го въведете в някоя клетка, например D1, и да направите препратка към тази клетка във формулата за брой символи:

    =SUMPRODUCT(LEN(B2:B8)-LEN(SUBSTITUTE(B2:B8, D1,""))

    Забележка. В случаите, когато броите появите на определен подниз в даден диапазон (например поръчки, започващи с "KK" или "AA"), трябва да разделите броя на символите на дължината на подниза, в противен случай всеки символ в подниза ще бъде преброен поотделно:

    =SUM((LEN(B2:B8)-LEN(SUBSTITUTE(B2:B8, D1, ""))) / LEN(D1))

    Как работи тази формула за броене на символи

    Както може би си спомняте, функцията SUBSTITUTE се използва за заместване на всички срещания на зададения символ ("A" в този пример) с празен текстов низ ("").

    След това предоставяме текстовия низ, върнат от SUBSTITUTE, на функцията LEN на Excel, така че тя да изчисли дължината на низа без буквите А. И след това изваждаме този брой символи от общата дължина на текстовия низ. Резултатът от тези изчисления е масив от брой символи, като в всяка клетка има по един брой символи.

    Накрая SUMPRODUCT сумира числата в масива и връща общия брой на зададения символ в диапазона.

    Формула за броене на определени символи в даден диапазон, без значение на големи и малки букви

    Вече знаете, че SUBSTITUTE е функция, при която се отчитат малки и големи букви, поради което нашата формула на Excel за броя на символите също се отчита по малки и големи букви.

    За да накарате формулата да игнорира регистрите, следвайте подходите, демонстрирани в предишния пример: Формула за броене на определени символи в клетка, без значение на регистрите.

    По-специално, можете да използвате една от следните формули, за да преброите определени символи в диапазон, като игнорирате случая:

    • Използвайте функцията UPPER и въведете символ с главни букви:

      =SUMPRODUCT(LEN(B2:B8) - LEN(SUBSTITUTE(UPPER(B2:B8), "A",")))

    • Използвайте вложени функции SUBSTITUTE:

      =SUMPRODUCT(LEN(B2:B8) - LEN(SUBSTITUTE(SUBSTITUTE((B2:B8), "A","), "a",")))

    • Използвайте функциите UPPER и LOWER, въведете главен или малък знак в някоя клетка и направете препратка към тази клетка във формулата си:

      =SUMPRODUCT(LEN(B2:B8) - LEN(SUBSTITUTE(SUBSTITUTE((B2:B8), UPPER($E$1), ""), LOWER($E$1),"")))

    Снимката на екрана по-долу демонстрира последната формула в действие:

    Съвет. За да преброите появите на даден конкретен текст (подниз) в даден диапазон, използвайте формулата, показана в Как да преброим определен текст / думи в даден диапазон.

    Ето как можете да преброите символите в Excel с помощта на функцията LEN. Ако искате да знаете как да преброите думи, а не отделни символи, ще намерите няколко полезни формули в следващата ни статия, моля, останете с нас!

    Междувременно можете да изтеглите примерни работни книги с формулата за броя на символите, разгледана в този урок, и да разгледате списъка със свързани ресурси в края на страницата. Благодаря ви, че прочетохте, и се надявам да се видим скоро!

    Майкъл Браун е отдаден технологичен ентусиаст със страст към опростяване на сложни процеси с помощта на софтуерни инструменти. С повече от десетилетие опит в технологичната индустрия, той е усъвършенствал уменията си в Microsoft Excel и Outlook, както и в Google Sheets и Docs. Блогът на Майкъл е посветен на споделянето на неговите знания и опит с други, предоставяйки лесни за следване съвети и уроци за подобряване на продуктивността и ефективността. Независимо дали сте опитен професионалист или начинаещ, блогът на Michael предлага ценни прозрения и практически съвети за извличане на максимума от тези основни софтуерни инструменти.