Сливане на клетки в Google Sheets от няколко реда в един ред въз основа на стойността на колоната

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

Обединяването на дублиращи се редове в електронните ви таблици може да се превърне в една от най-сложните задачи. Нека видим с какво могат да ви помогнат формулите на Google и да се запознаем с една интелигентна добавка, която върши цялата работа вместо вас.

    Функции за комбиниране на клетки с една и съща стойност в Google Sheets

    Не сте си мислили, че в Google Sheets няма да има функции за подобна задача, нали? ;) Ето формулите, които ще ви трябват за консолидиране на редове и премахване на дублиращи се клетки в електронни таблици.

    CONCATENATE - Функция и оператор на Google Sheets за обединяване на записи

    Първото нещо, което ми идва наум, когато мисля не просто за премахване на дублиращи се редове, а за обединяване на дублиращи се редове, е функцията CONCATENATE на Google Sheets и амперсанд (&) - специален оператор за обединяване.

    Да предположим, че имате списък с филми за гледане и искате да ги групирате по жанр:

    • Можете да обединявате клетки в Google Sheets само с интервали между стойностите:

      =CONCATENATE(B2," ",C2," ",B8," ",C8)

      =B2&" "&C2&" "&B8&" "&C8

    • Или използвайте интервали с други знаци, за да обедините дублиращи се редове:

      =CONCATENATE(A3,": ",B3," (",C3,"), ",B6," (",C6,") ")

      =A3&": "&B3&" ("&C3&"), "&B6&" ("&C6&") "

    След като редовете са обединени, можете да се отървете от формулите и да запазите само текста по примера на този урок: Конвертиране на формули в стойности в Google Sheets

    Колкото и прост да изглежда този начин, той очевидно далеч не е идеален. Той изисква да знаете точните позиции на дубликатите и вие сте тези, които трябва да ги посочат на формулата. И така, това може да работи за малки набори от данни, но какво да правите, когато те станат по-големи?

    Сливане на клетки, но запазване на данните с UNIQUE + JOIN

    Този тандем от формули намира дубликати в Google Sheets (и обединява клетки с уникални записи) вместо вас. Въпреки това вие все още отговаряте за това и трябва да покажете на формулите къде да търсят. Нека видим как работи това в същия списък за наблюдение.

    1. Използвам Google Sheets UNIQUE в E2, за да проверя жанровете в колона A:

      =UNIQUE(A2:A)

      Формулата връща списъка с всички жанрове, без значение дали се повтарят или не се повтарят в първоначалния списък. С други думи, тя премахва дубликатите от колона А.

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

      Съвет: Ако добавите повече стойности в колона А, формулата автоматично ще разшири списъка с уникални записи.

    2. След това създавам следващата си формула с функцията JOIN на Google Sheets:

      =JOIN(", ",FILTER(B:B,A:A=E2))

      Как работят елементите на тази формула?

      • Филтърът претърсва колона A за всички случаи на стойността в E2. След като я открие, той извлича съответните записи от колона B.
      • JOIN обединява тези стойности в една клетка със запетая.

      Копирайте формулата надолу и ще получите всички заглавия, подредени по жанр.

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

      =JOIN(", ",FILTER(C:C,A:A=E2))

    И така, тази опция снабдява Google Sheets с няколко функции за обединяване на няколко реда в един въз основа на дублиране. И това става автоматично. Е, почти. Възнамерявам да задържа перфектното решение за самия край на статията. Но не се колебайте да преминете към него веднага ;)

    QUERY функция за премахване на дублиращи се линии в Google Sheets

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

    Ето и самата функция QUERY:

    =QUERY(данни, заявка, [заглавия])

    Как работи:

    • данни (задължително) - обхватът на изходната таблица.
    • заявка (задължително) - набор от команди за определяне на условията за получаване на конкретни данни.

      Съвет. Пълен списък на всички команди можете да намерите тук.

    • заглавия (по избор) - броят на редовете на заглавието в таблицата на източника.

    Казано по-просто, Google Sheets QUERY връща някои набори от стойности въз основа на зададените от вас условия.

    Пример 1

    Искам да получа само филми по комикси, които все още не съм гледал:

    =QUERY(A1:C, "изберете * където A="Комикс"")

    Формулата обработва цялата ми изходна таблица (A1:C) и връща всички колони (select *) за филми с комикси (където A="Comic Book").

    Съвет: умишлено не посочвам последния ред на моята таблица (A1:C), за да запазя гъвкавостта на формулата и да връщам нови записи в случай, че в таблицата са добавени други редове.

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

    Съвет. Вижте други начини за откриване на дубликати в таблицата в Google Sheets в тази статия.

    Пример 2

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

    Използвам Google Sheets QUERY, за да премахна дублиращите се филми и да пресметна общата сума, спечелена от всеки филм за всички уикенди. Подреждам ги и по азбучен ред на жанра:

    =QUERY(B1:D, "изберете B,C, SUM(D) група от B,C")

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

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

    =QUERY(B1:D, "изберете B,C, SUM(D) група от C,B")

    Пример 3

    Да предположим, че успешно управлявате книжарница и следите всички книги, които се намират на склад във всичките ви клонове. Списъкът достига до стотици книги:

    • Заради шумотевицата около поредицата за Хари Потър решавате да проверите колко книги на Джей Кей Роулинг ви остават:

      =QUERY('Копие на На склад'!A1:D, "изберете A,B,C,D където A="Роулинг"")

    • Решавате да отидете по-далеч и да запазите само поредицата за Хари Потър, пропускайки други приказки:

      =QUERY('На склад'!A1:D, "изберете A,B,C,D където (A='Роулинг' и C съдържа 'Хари Потър')")

    • С помощта на функцията QUERY на Google Sheets можете също да преброите всички тези книги:

      =QUERY('На склад'!A1:D, "изберете A,B, сума(D) където (A='Роулинг' и C съдържа 'Хари Потър') група от A,B")

    Предполагам, че вече имате представа как функцията QUERY "премахва дубликати" в Google Sheets. Въпреки че е достъпна за всички, за мен това е по-скоро заобиколен начин за комбиниране на дублиращи се редове.

    Съвет. QUERY е толкова мощен, че може да обединява не само дубликати в рамките на един лист - може да съответства & обединяване на цели таблици заедно.

    Нещо повече, докато не научите заявките, които използва, и правилата за тяхното прилагане, функцията няма да ви бъде от голяма полза.

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

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

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

    Спомняте ли си моя списък с книги в магазина с няколкостотин реда? Нека видим как инструментът ще се справи с него.

    Съвет. Тъй като програмата е част от Power Tools, първо я инсталирайте и отидете директно в Сливане & Комбиниране група:

    След това щракнете върху иконата на добавката, за да я отворите:

    1. След като добавката е стартирана, изберете диапазона, в който искате да обедините дублиращите се редове:

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

    Бих искал всички книги, принадлежащи на един автор, да бъдат изведени в една клетка и разделени с прекъсващи линии. Ако някои заглавия се повтарят, добавката ще ги покаже само веднъж.

    Що се отнася до количеството, нямам нищо против да събера всички книги на автор. Броят на дублиращите се заглавия, ако има такива, ще бъде събран.

  • След като регулирате всички настройки, щракнете върху Завършете . Добавката ще свърши работата и ще покаже съобщението с всичко обработено за няколко секунди:
  • Инструментът обедини дублиращите се редове в списъка ми с книги. Ето част от това как изглеждат данните ми сега:

    Съвет. Като алтернатива можете да разделите един лист на няколко листа, така че да има отделна таблица с всички книги за всеки автор, или да маркирате дублиращите се редове в Google Sheets.

    Съвет. Разгледайте как използвах добавката:

    Или гледайте кратък видеоклип, в който се представя инструментът:

    Използване на сценарии за полуавтоматично сливане на дубликати

    Друга възможност за комбиниране на дублиращи се редове е полуавтоматизирането на нейното използване.

    Ако често преминавате през стъпките и избирате едни и същи опции, можете да ги запишете в сценарии. Сценариите ви позволяват да използвате повторно едни и същи настройки без усилие за същите или различни набори от данни.

    Ще трябва да дадете име на сценария & да посочите лист и диапазон, които трябва да обработва:

    Запазените тук настройки могат бързо да бъдат извикани от менюто на Google Sheets. Добавката ще започне да комбинира дублиращи се редове веднага, като ви спести допълнително време:

    Препоръчвам ви да се запознаете по-добре с инструмента и неговите възможности, защото Google Sheets е "тъмен и пълен с ужаси", ако разбирате какво имам предвид ;)

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