Об'єднання комірок в Google Таблицях з декількох рядків в один рядок на основі значення стовпця

  • Поділитися Цим
Michael Brown

Об'єднання повторюваних рядків у ваших таблицях може перетворитися на одне з найскладніших завдань. Давайте подивимося, чим можуть допомогти формули Google, і познайомимося з одним розумним доповненням, яке зробить всю роботу за вас.

    Функції для об'єднання комірок з однаковим значенням в Google Таблицях

    Ви ж не думали, що в Google Таблицях не вистачить функцій для такого роду завдань? ;) Ось формули, які вам знадобляться для об'єднання рядків і видалення дублікатів комірок в електронних таблицях.

    CONCATENATE - функція та оператор Google Таблиць для об'єднання записів

    Перше, що спадає на думку, коли я думаю про те, щоб не просто видалити дублікати, а об'єднати повторювані рядки, - це функція Google Sheets CONCATENATE і амперсанд (&) - спеціальний оператор конкатенації.

    Припустимо, у вас є список фільмів для перегляду, і ви хочете згрупувати їх за жанрами:

    • Об'єднувати комірки в Google Таблицях можна тільки з пробілами між значеннями:

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

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

    • Або використовуйте пробіли з будь-якими іншими знаками, щоб об'єднати повторювані рядки разом:

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

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

    Після об'єднання рядків можна позбутися формул і залишити тільки текст за прикладом цього уроку: Перетворення формул у значення в Google Таблицях

    Яким би простим не здавався цей спосіб, він, вочевидь, далекий від ідеалу. Він вимагає від вас знання точних позицій дублікатів, і саме ви повинні вказати їх у формулі. Так, це може працювати для невеликих наборів даних, але що робити, коли вони стають більшими?

    Об'єднайте комірки, але збережіть дані за допомогою UNIQUE + JOIN

    Цей тандем формул знаходить дублікати в Google Таблицях (і об'єднує комірки з унікальними записами) за вас. Однак ви все ще відповідальні і повинні показати формулам, де шукати. Давайте подивимося, як це працює на тому ж списку для перегляду.

    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(дані, запит, [заголовки])

    Як це працює:

    • дані (обов'язково) - діапазон вашої вихідної таблиці.
    • запит (required) - набір команд для визначення умов з метою отримання конкретних даних.

      Порада: повний список всіх команд можна отримати тут.

    • заголовки (необов'язково) - кількість рядків заголовків у вихідній таблиці.

    Простіше кажучи, запити до Google Таблиць повертають деякі набори значень на основі заданих вами умов.

    Приклад 1

    Я хочу отримати тільки фільми за коміксами, які ще не дивився:

    =QUERY(A1:C, "select * where A="Comic Book"")

    Формула обробляє всю мою вихідну таблицю (A1:C) і повертає всі стовпці (виділити *) для фільмів за коміксами (де A="Comic Book").

    Порада. Я навмисно не вказую останній рядок своєї таблиці (A1:C) - щоб формула залишалася гнучкою і повертала нові записи у разі додавання в таблицю інших рядків.

    Як бачите, він працює подібно до фільтра. Але на практиці ваші дані можуть бути набагато більшими - з цифрами, які можуть знадобитися для розрахунків.

    Порада. Ознайомтеся з іншими способами пошуку дублікатів у таблиці Google Sheets у цій статті.

    Приклад 2

    Припустимо, я проводжу невелике дослідження і відстежую касові збори найновіших фільмів у кінотеатрах за вихідні:

    Я використовую Google Sheets QUERY для видалення дублікатів і підрахунку загальної суми зароблених грошей за один фільм за всі вихідні. Також я розставляю їх в алфавітному порядку за жанрами:

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

    Зауважимо, що для згрупувати за ви повинні перерахувати всі стовпці після команди вибрати інакше формула не працюватиме.

    Щоб відсортувати записи за фільмами, я можу просто змінити порядок стовпців для згрупувати за :

    =QUERY(B1:D, "select B,C, SUM(D) group by C,B")

    Приклад 3

    Припустимо, ви успішно керуєте книжковим магазином і відстежуєте всі книги, які є в наявності у всіх ваших філіях. Список може сягати сотень книг:

    • У зв'язку з ажіотажем навколо серії книг про Гаррі Поттера, ви вирішили перевірити, скільки у вас залишилося книг Джоан Роулінг:

      =QUERY('Примірник на складі'!A1:D, "select A,B,C,D where A="Rowling"")

    • Ви вирішили піти далі і залишити тільки серію про Гаррі Поттера, опустивши інші казки:

      =QUERY('В наявності'!A1:D, "вибрати A,B,C,D де (A='Роулінг' і C містить 'Гаррі Поттер')")

    • Використовуючи функцію ЗАПИТ в Google Sheets, ви також можете порахувати всі ці книги:

      =QUERY('In stock'!A1:D, "select A,B, sum(D) where (A='Rowling' and C contains 'Harry Potter') group by A,B")

    Думаю, тепер ви зрозуміли, як функція ЗАПИТ "видаляє дублікати" в Google Таблицях. Хоча це доступний для всіх варіант, для мене це більше схоже на обхідний шлях об'єднання повторюваних рядків.

    Порада. QUERY настільки потужний, що може об'єднувати не тільки дублікати в межах аркуша - він може зіставляти і об'єднувати цілі таблиці.

    Більше того, поки ви не вивчите запити, які вона використовує, і правила їх застосування, від функції буде мало користі.

    Найшвидший спосіб об'єднати повторювані рядки

    Коли ви втрачаєте надію знайти просте рішення для об'єднання декількох рядків на основі дублікатів, наше доповнення для Google Таблиць стане відмінним виходом :)

    Об'єднати повторювані рядки сканує стовпець з повторюваними записами, об'єднує відповідні комірки з інших стовпців, розділяє ці записи роздільниками і консолідує числа. І все це одночасно і в кілька кліків мишею!

    Пам'ятаєте мій список книг у магазині з кількома сотнями рядків? Подивимося, як інструмент з ним впорається.

    Порада. Оскільки утиліта входить до складу Power Tools, спочатку встановіть її і перейдіть безпосередньо в розділ Злиття та об'єднання група:

    Потім натисніть на іконку доповнення, щоб відкрити його:

    1. Після запуску доповнення виберіть діапазон, в якому потрібно об'єднати рядки, що повторюються:

  • Вибираємо ті стовпчики, які містять значення, що повторюються. У моєму випадку це Прізвище та ім'я і Ім'я та прізвище :
  • На наступному кроці ви можете визначитися з наступним:
    • стовпці зі значеннями, які ви будете зводити разом
    • способи об'єднання цих записів: злиття або обчислення
    • роздільник для об'єднання комірок з текстом
    • функція для обчислення чисел

    Мені б хотілося, щоб всі книги одного автора були зведені в одну комірку і розділені лініями розриву. Якщо якісь назви повторюються, то доповнення буде показувати їх тільки один раз.

    Щодо кількості, то мене влаштовує, що всі книги по автору будуть підсумовуватися, а дублікати, якщо такі будуть, будуть додаватися.

  • Після налаштування всіх параметрів натисніть Фініш Доповнення виконає роботу і покаже повідомлення з усім обробленим за кілька секунд:
  • Інструмент об'єднав повторювані рядки в моєму списку книг. Ось частина того, як тепер виглядають мої дані:

    Порада: Ви також можете розділити один аркуш на кілька аркушів, щоб створити окрему таблицю з усіма книгами для кожного автора, або виділити рядки, що повторюються, в Google Таблицях.

    Порада: подивіться, як я користувався доповненням:

    Або перегляньте коротке відео, що знайомить з інструментом:

    Використання сценаріїв для напівавтоматичного об'єднання дублікатів

    Ще одна можливість, яку пропонує Combine Duplicate Rows - це напівавтоматизація його використання.

    Якщо ви часто повторюєте кроки і вибираєте одні й ті ж параметри, ви можете зберегти їх у сценарії. Сценарії дозволяють вам легко використовувати ті ж самі налаштування на одному і тому ж або різних наборах даних.

    Вам потрібно буде дати ім'я сценарію, вказати аркуш і діапазон, який він повинен обробити:

    Збережені тут налаштування можна швидко викликати з меню Google Таблиць. Надбудова одразу почне об'єднувати повторювані рядки, заощаджуючи ваш додатковий час:

    Я щиро рекомендую вам познайомитися з інструментом та його можливостями ближче, адже Google Таблиці "темні і повні жахів", якщо ви розумієте, що я маю на увазі ;)

    Майкл Браун — відданий ентузіаст технологій із пристрастю до спрощення складних процесів за допомогою програмних засобів. Маючи понад десятирічний досвід роботи в технологічній індустрії, він відточив свої навички роботи з Microsoft Excel і Outlook, а також із Google Таблицями та Документами. Блог Майкла присвячений тому, щоб поділитися своїми знаннями та досвідом з іншими, надаючи прості поради та навчальні посібники для підвищення продуктивності та ефективності. Незалежно від того, чи є ви досвідченим професіоналом чи початківцем, блог Майкла пропонує цінну інформацію та практичні поради щодо отримання максимальної користі від цих основних програмних інструментів.