Содержание
19323127.11.2012 Скачать пример
Способ 1. С помощью формул
Имеем несколько однотипных таблиц на разных листах одной книги. Например, вот такие:
Необходимо объединить их все в одну общую таблицу, просуммировав совпадающие значения по кварталам и наименованиям.
Самый простой способ решения задачи «в лоб» — ввести в ячейку чистого листа формулу вида
=’2001 год’!B3+’2002 год’!B3+’2003 год’!B3
которая просуммирует содержимое ячеек B2 с каждого из указанных листов, и затем скопировать ее на остальные ячейки вниз и вправо.
Если листов очень много, то проще будет разложить их все подряд и использовать немного другую формулу:
=СУММ(‘2001 год:2003 год’!B3)
Фактически — это суммирование всех ячеек B3 на листах с 2001 по 2003, т.е. количество листов, по сути, может быть любым. Также в будущем возможно поместить между стартовым и финальным листами дополнительные листы с данными, которые также станут автоматически учитываться при суммировании.
Способ 2. Если таблицы неодинаковые или в разных файлах
Если исходные таблицы не абсолютно идентичны, т.е. имеют разное количество строк, столбцов или повторяющиеся данные или находятся в разных файлах, то суммирование при помощи обычных формул придется делать для каждой ячейки персонально, что ужасно трудоемко. Лучше воспользоваться принципиально другим инструментом.
Рассмотрим следующий пример. Имеем три разных файла (Иван.xlsx, Рита.xlsx и Федор.xlsx) с тремя таблицами:
Хорошо заметно, что таблицы не одинаковы — у них различные размеры и смысловая начинка. Тем не менее их можно собрать в единый отчет меньше, чем за минуту. Единственным условием успешного объединения (консолидации) таблиц в подобном случае является совпадение заголовков столбцов и строк. Именно по первой строке и левому столбцу каждой таблицы Excel будет искать совпадения и суммировать наши данные.
Для того, чтобы выполнить такую консолидацию:
- Заранее откройте исходные файлы
- Создайте новую пустую книгу (Ctrl + N)
- Установите в нее активную ячейку и выберите на вкладке (в меню) Данные — Консолидация <font>(Data — Consolidate)</font>. Откроется соответствующее окно:
- Установите курсор в строку Ссылка <font>(Reference)</font> и, переключившись в файл Иван.xlsx, выделите таблицу с данными (вместе с шапкой). Затем нажмите кнопку Добавить <font>(Add)</font> в окне консолидации, чтобы добавить выделенный диапазон в список объединяемых диапазонов.
- Повторите эти же действия для файлов Риты и Федора. В итоге в списке должны оказаться все три диапазона:
Обратите внимание, что в данном случае Excel запоминает, фактически, положение файла на диске, прописывая для каждого из них полный путь (диск-папка-файл-лист-адреса ячеек). Чтобы суммирование происходило с учетом заголовков столбцов и строк необходимо включить оба флажка Использовать в качестве имен<font>(Use labels)</font>. Флаг Создавать связи с исходными данными<font>(Create links to source data)</font> позволит в будущем (при изменении данных в исходных файлах) производить пересчет консолидированного отчета автоматически.
После нажатия на ОК видим результат нашей работы:
Наши файлы просуммировались по совпадениям названий из крайнего левого столбца и верхней строки выделенных областей в каждом файле. Причем, если развернуть группы (значками плюс слева от таблицы), то можно увидеть из какого именно файла какие данные попали в отчет и ссылки на исходные файлы:
Ссылки по теме
Итак, есть два листа Excel, которые нужно объединить для дальнейшего анализа данных. Предположим, в одной таблице содержатся цены (столбец Price) и описания товаров (столбец Beer), которые Вы продаёте, а во второй отражены данные о наличии товаров на складе (столбец In stock). Если Вы или Ваши коллеги составляли обе таблицы по каталогу, то в обеих должен присутствовать как минимум один ключевой столбец с уникальными идентификаторами товаров. Описание товара или цена могут изменяться, но уникальный идентификатор всегда остаётся неизменным.
Трудности начинаются, когда Вы получаете некоторые таблицы от производителя или из других отделов компании. Дело может ещё усложниться, если вдруг вводится новый формат уникальных идентификаторов или самую малость изменятся складские номенклатурные обозначения (SKU). И перед Вами стоит задача объединить в Excel новую и старую таблицы с данными. Так или иначе, возникает ситуация, когда в ключевых столбцах имеет место только частичное совпадение записей, например, “12345” и “12345-новый_суффикс“. Вам-то понятно, что это тот же SKU, но компьютер не так догадлив! Это не точное совпадение делает невозможным использование обычных формул Excel для объединения данных из двух таблиц.
И что совсем плохо – соответствия могут быть вовсе нечёткими, и “Некоторая компания” в одной таблице может превратиться в “ЗАО «Некоторая Компания»” в другой таблице, а “Новая Компания (бывшая Некоторая Компания)” и “Старая Компания” тоже окажутся записью об одной и той же фирме. Это известно Вам, но как это объяснить Excel?
Выход есть всегда, читайте далее и Вы узнаете решение!
Замечание: Решения, описанные в этой статье, универсальны. Вы можете адаптировать их для дальнейшего использования с любыми стандартными формулами, такими как ВПР (VLOOKUP), ПОИСКПОЗ (MATCH), ГПР (HLOOKUP) и так далее.
Выберите подходящий пример, чтобы сразу перейти к нужному решению:
Ключевой столбец в одной из таблиц содержит дополнительные символы
Рассмотрим две таблицы. Столбцы первой таблицы содержат номенклатурный номер (SKU), наименование пива (Beer) и его цену (Price). Во второй таблице записан SKU и количество бутылок на складе (In stock). Вместо пива может быть любой товар, а количество столбцов в реальной жизни может быть гораздо больше.
В таблице с дополнительными символами создаём вспомогательный столбец. Можно добавить его в конец таблицы, но лучше всего вставить его следующим справа после ключевого столбца, чтобы он был на виду.
Ключевым в таблице в нашем примере является столбец A с данными SKU, и нужно извлечь из него первые 5 символов. Добавим вспомогательный столбец и назовём его SKU helper:
- Наводим указатель мыши на заголовок столбца B, при этом он должен принять вид стрелки, направленной вниз:
- Кликаем по заголовку правой кнопкой мыши и в контекстном меню выбираем Вставить (Insert):
- Даём столбцу имя SKU helper.
- Чтобы извлечь первые 5 символов из столбца SKU, в ячейку B2 вводим такую формулу:
=ЛЕВСИМВ(A2;5)
=LEFT(A2,5)
Здесь A2 – это адрес ячейки, из которой мы будем извлекать символы, а 5 – количество символов, которое будет извлечено.
- Копируем эту формулу во все ячейки нового столбца.
Готово! Теперь у нас есть ключевые столбцы с точным совпадением значений – столбец SKU helper в основной таблице и столбец SKU в таблице, где будет выполняться поиск.
Теперь при помощи функции ВПР (VLOOKUP) мы получим нужный результат:
Другие формулы
- Извлечь первые Х символов справа: например, 6 символов справа из записи “DSFH-164900”. Формула будет выглядеть так:
=ПРАВСИМВ(A2;6)
=RIGHT(A2,6)
- Пропустить первые Х символов, извлечь следующие Y символов: например, нужно извлечь “0123” из записи “PREFIX_0123_SUFF”. Здесь нам нужно пропустить первые 8 символов и извлечь следующие 4 символа. Формула будет выглядеть так:
=ПСТР(A2;8;4)
=MID(A2,8,4)
- Извлечь все символы до разделителя, длина получившейся последовательности может быть разной. Например, нужно извлечь “123456” и “0123” из записей “123456-суффикс” и “0123-суффикс” соответственно. Формула будет выглядеть так:
=ЛЕВСИМВ(A2;НАЙТИ("-";A2)-1)
=LEFT(A2,FIND("-",A2)-1)
Одним словом, Вы можете использовать такие функции Excel, как ЛЕВСИМВ (LEFT), ПРАВСИМВ (RIGHT), ПСТР (MID), НАЙТИ (FIND), чтобы извлекать любые части составного индекса. Если с этим возникли трудности – свяжитесь с нами, мы сделаем всё возможное, чтобы помочь Вам.
Данные из ключевого столбца в первой таблице разбиты на два или более столбца во второй таблице
Предположим, таблица, в которой производится поиск, содержит столбец с идентификаторами. В ячейках этого столбца содержатся записи вида XXXX-YYYY, где XXXX – это кодовое обозначение группы товаров (мобильные телефоны, телевизоры, видеокамеры, фотокамеры), а YYYY – это код товара внутри группы. Главная таблица состоит из двух столбцов: в одном содержатся коды товарных групп (Group), во втором записаны коды товаров (ID). Мы не можем просто отбросить коды групп товаров, так как один и тот же код товара может повторяться в разных группах.
Добавляем в главной таблице вспомогательный столбец и называем его Full ID (столбец C), подробнее о том, как это делается рассказано ранее в этой статье.
В ячейке C2 запишем такую формулу:
=СЦЕПИТЬ(A2;"-";B2)
=CONCATENATE(A2,"-",B2)
Здесь A2 – это адрес ячейки, содержащей код группы; символ “–” – это разделитель; B2 – это адрес ячейки, содержащей код товара. Скопируем формулу в остальные строки.
Теперь объединить данные из наших двух таблиц не составит труда. Мы будем сопоставлять столбец Full ID первой таблицы со столбцом ID второй таблицы. При обнаружении совпадения, записи из столбцов Description и Price второй таблицы будут добавлены в первую таблицу.
Данные в ключевых столбцах не совпадают
Вот пример: Вы владелец небольшого магазина, получаете товар от одного или нескольких поставщиков. У каждого из них принята собственная номенклатура, отличающаяся от Вашей. В результате возникают ситуации, когда Ваша запись “Case-Ip4S-01” соответствует записи “SPK-A1403” в файле Excel, полученном от поставщика. Такие расхождения возникают случайным образом и нет никакого общего правила, чтобы автоматически преобразовать “SPK-A1403” в “Case-Ip4S-01”.
Плохая новость: Данные, содержащиеся в этих двух таблицах Excel, придётся обрабатывать вручную, чтобы в дальнейшем было возможно объединить их.
Хорошая новость: Это придётся сделать только один раз, и получившуюся вспомогательную таблицу можно будет сохранить для дальнейшего использования. Далее Вы сможете объединять эти таблицы автоматически и сэкономить таким образом массу времени
1. Создаём вспомогательную таблицу для поиска.
Создаём новый лист Excel и называем его SKU converter. Копируем весь столбец Our.SKU из листа Store на новый лист, удаляем дубликаты и оставляем в нём только уникальные значения.
Рядом добавляем столбец Supp.SKU и вручную ищем соответствия между значениями столбцов Our.SKU и Supp.SKU (в этом нам помогут описания из столбца Description). Это скучная работёнка, пусть Вас радует мысль о том, что её придётся выполнить только один раз :-).
В результате мы имеем вот такую таблицу:
2. Обновляем главную таблицу при помощи данных из таблицы для поиска.
В главную таблицу (лист Store) вставляем новый столбец Supp.SKU.
Далее при помощи функции ВПР (VLOOKUP) сравниваем листы Store и SKU converter, используя для поиска соответствий столбец Our.SKU, а для обновлённых данных – столбец Supp.SKU.
Столбец Supp.SKU заполняется оригинальными кодами производителя.
Замечание: Если в столбце Supp.SKU появились пустые ячейки, то необходимо взять все коды SKU, соответствующие этим пустым ячейкам, добавить их в таблицу SKU converter и найти соответствующий код из таблицы поставщика. После этого повторяем шаг 2.
3. Переносим данные из таблицы поиска в главную таблицу
В нашей главной таблице есть ключевой столбец с точным совпадением с элементами таблицы поиска, так что теперь эта задача не вызовет сложностей
При помощи функции ВПР (VLOOKUP) объединяем данные листа Store с данными листа Wholesale Supplier 1, используя для поиска соответствий столбец Supp.SKU.
Вот пример обновлённых данных в столбце Wholesale Price:
Всё просто, не так ли? Задавайте свои вопросы в комментариях к статье, я постараюсь ответить, как можно скорее.
Урок подготовлен для Вас командой сайта office-guru.ru Источник: https://www.ablebits.com/office-addins-blog/2013/09/20/merge-worksheets-excel-partial-match/ Перевел: Антон АндроновПравила перепечаткиЕще больше уроков по Microsoft Excel
Работа в Excel – это, вне сомнения, бесценный опыт, который пригодится каждому пользователю. Разумеется, я не утверждаю, что владеть этим инструментом в совершенстве должен каждый юзер, но все же чем большими знаниями вы обладаете, тем лучше. В предыдущих своих статьях я уже неоднократно рассказывал о возможностях Экселя, о тонкостях построения диаграмм, графиков и таблиц. Кроме того, не единожды речь заходила и о применении тех или иных функций на практике.
Если таблицы одинаковые
Как вы понимаете, консолидация таблиц здорово упрощает работу. Она позволяет создать сводную таблицу, объединив данные всех остальных в одну. Рассмотрим для начала первый вариант, когда таблицы, в общем-то, однотипные, различие лишь в цифрах. Свести их в таком случае воедино очень просто, нужно лишь суммировать значения в ячейках. Как это делается, я уже рассказывал: используется формула СУММ, которая просуммируют все значения, которые совпадают по кварталам и наименованиям (в конкретном случае). Вот и всё, принцип действий очень простой.
Если таблицы разные
Нередкой является ситуация, когда исходники отличаются по многим критериям либо же выполнены на разных файлах. Как вы понимаете, воспользоваться предыдущим вариантом вряд ли получится, уж больно трудоемкий процесс. А раз суммирование ячеек отпадает, нужно искать другие варианты.
К счастью, такой вариант имеется! Представим, что у нас есть три разноплановые таблицы, которые нужно объединить.
Они могут быть абсолютно разными, но есть одно условие: в таких табличках должны совпадать заголовки строчек и столбиков. Дело в том, что первая строка и левый столбик каждой таблицы – это тот критерий, по которому поисковая система Excel будет находить совпадения и суммировать их между собой. Как выполнить консолидацию? Все очень просто:
- Откройте предварительно все исходники, после чего создайте пустую книгу, воспользовавшись комбинацией [Ctrl]+[N].
- Выберите ячейку, затем откройте вкладку «Данные» и отыщите кнопочку «Консолидация».
- В открывшемся окне необходимо установить соответствующие параметры: в поле «Ссылка» перейдите на одну из таблиц и выделите ее полностью, включая шапку. Теперь кликните по кнопке «Добавить», которая расположена в окошке консолидации, после чего в поле «Список диапазонов» будет добавлен диапазон, выделенный ранее.
- Проделайте те же действия для оставшихся таблиц.
- Поставьте галочки в обоих пунктах «Использовать в качестве имен», а также напротив «Создавать связи с исходными данными». Нажмите «ОК».
- Теперь можно наслаждаться результатом: все файлы просуммировались по названиям левого столбика и верхней строчки выделенных областей каждой из таблиц.
Надеюсь, этот небольшой ликбез поможет вам быстро и качественно объединять несколько таблиц в Excel в одну.
Видео в помощь
Используемые источники:
- https://www.planetaexcel.ru/techniques/2/138/
- https://office-guru.ru/excel/kak-obedinit-dve-tablicy-excel-po-chastichnomu-sovpadeniyu-jacheek-435.html
- https://userologia.ru/kak-obedinit-tablicy-v-excel.html