Excel для Microsoft 365 Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Еще…Меньше
В этом учебнике вы можете с помощью редактора запросов Power Query импортировать данные из локального файла Excel, который содержит сведения о продукте, а также из веб-канала OData со сведениями о заказах продуктов. Вы выполняете преобразование и агрегирование и объединяете данные из обоих источников, чтобы получить отчет «Общие продажи за товар и год».
Для выполнения этого учебника нужна книга Товары. В диалоговом окне Сохранение документа присвойте файлу имя Products and Orders.xlsx.
В этой задаче вы импортируете продукты из файла Products and Orders.xlsx (загруженный или переименован выше) в книгу Excel, превысят строки до столбцов, удалите некоторые столбцы и загрузите запрос на книгу.
Шаг 1. Подключение к книге Excel
-
Создайте книгу Excel.
-
Выберите Данные > Получить данные > из файла > из книги.
-
В диалоговом окне Импорт данных найдите скачаный Products.xlsx и выберите открыть.
-
В области Навигатор дважды щелкните таблицу Товары. Появится редактор Power Query.
Шаг 2. Изучение шагов запроса
По умолчанию Power Query автоматически добавляет несколько шагов для удобства. Чтобы узнать больше, проверьте каждый шаг в области Параметры действия.
-
Щелкните правой кнопкой мыши шаг «Источник» и выберите изменить Параметры. Это шаг был создан при импорте книги.
-
Щелкните правой кнопкой мыши этап навигации и выберите изменить Параметры. Это шаг создан при выборе таблицы в диалоговом окне Навигация.
-
Щелкните правой кнопкой мыши шаг Измененный тип и выберите изменить Параметры. Этот шаг был создан Power Query, который вывели типы данных каждого столбца. Чтобы увидеть полную формулу, выберите стрелку вниз справа от панели формул.
Шаг 3. Удаление ненужных столбцов
В этом шаге вы удалите все столбцы, кроме ProductID, ProductName, CategoryID и QuantityPerUnit.
-
В режимепредварительного просмотра данных выберите столбцы ProductID,ProductName,CategoryIDи QuantityPerUnit (используйте CTRL+щелчок или SHIFT+щелчок).
-
Выберите Удалить столбцы > Удалить другие столбцы.
Шаг 4. Загрузка запроса на продукты
На этом этапе запрос Products загружается на Excel таблицу.
-
Выберите Главная >Закрыть & загрузить. Запрос появится на новом Excel.
Сводка: шаги Power Query, созданные в задаче 1
При выполнении действий с запросами в Power Query создаются шаги запроса, которые вы Параметры в списке Примененные шаги. Каждому шагу запроса соответствует формула Power Query, что также называют языком «M». Дополнительные сведения о формулах Power Query см. вэтой Excel.
Задача |
Шаг запроса |
Формула |
---|---|---|
Импорт Excel книги |
Исходное значение |
= Excel. Книга(File.Contents(«C:Products and Orders.xlsx»), null, true) |
Выбор таблицы «Товары» |
Переход. |
= Source{[Item=»Products»,Kind=»Table»]}[Data] |
Power Query автоматически обнаруживает типы данных столбцов |
Changed Type |
= Table.TransformColumnTypes(Products_Table,{{«ProductID», Int64.Type}, {«ProductName», type text}, {«SupplierID», Int64.Type}, {«CategoryID», Int64.Type}, {«QuantityPerUnit», type text}, {«UnitPrice», type number}, {«UnitsInStock», Int64.Type}, {«UnitsOnOrder», Int64.Type}, {«ReorderLevel», Int64.Type}, {«Discontinued», type logical}}) |
Удаление ненужных столбцов |
Удалены другие столбцы |
= Table.SelectColumns(FirstRowAsHeader,{«ProductID», «ProductName», «CategoryID», «QuantityPerUnit»}) |
В этой задаче вы импортируете данные в книгу Excel из образца веб-канала OData Northwindна сайте http://services.odata.org/Northwind/Northwind.svc, расширяете таблицу Order_Details, удаляете столбцы, вычисляете итог строк, преобразовываете OrderDate, группируете строки по productID и Year, переименовываете запрос и отключаете загрузку запроса в книгу Excel.
Шаг 1. Подключение веб-канал OData
-
Выберите Данные > получить данные> из других источников > из канала OData.
-
В диалоговом окне Канал OData введите URL-адрес канала OData Northwind.
-
Нажмите кнопку ОК.
-
В области Навигатор дважды щелкните таблицу Заказы.
Шаг 2. Развертывание таблицы Order_Details
В этом шаге вы развертываете таблицу Order_Details, которая относится к таблице Orders, чтобы объединить столбцы ProductID, UnitPrice и Quantity из таблицы Order_Details с таблицей Orders. Операция Расширить объединяет столбцы из связанной таблицы с конечной таблицей. При выполнения запроса строки из связанной таблицы(Order_Details) объединяются в строки с главной таблицей(Orders).
В Power Query столбец, содержащий связанную таблицу, содержит в ячейке значение Запись или Таблица. Они называются структурированные столбцы. Запись указывает на одну связанную запись и представляет связь «один-к-одному» с текущими данными или главной таблицей. Таблица указывает на связанную таблицу и представляет связь «один-к-многим» с текущей или главной таблицей. Структурированный столбец представляет связь в источнике данных с реляционной моделью. Например, структурированный столбец указывает объект с связью внешнего ключа в канале OData или связи внешнего ключа в SQL Server базе данных.
После развертывания таблицы Order_Details в таблицу Orders добавляются три новых столбца и дополнительные строки (по одному столбцу для каждой строки во вложенной или связанной таблице).
-
В режиме предварительногопросмотра данных прокрутите страницу по горизонтали до Order_Details столбца.
-
В столбце Order_Details выберите значок развернуть ().
-
В раскрывающемся списке Расширить:
-
Выберите (Выбрать все столбцы), чтобы очистить все столбцы.
-
Выберите ProductID,UnitPriceи Quantity.
-
Нажмите кнопку ОК.
Примечание: В Power Query можно развернуть таблицы, связанные со столбцом, и агрегировать столбцы связанной таблицы, прежде чем расширять данные в конечной таблице. Дополнительные сведения о том, как выполнять операции агрегирования, см. в статье Агрегирование данных из столбца.
-
Шаг 3. Удаление ненужных столбцов
В этом шаге вы удалите все столбцы, кроме OrderDate, ProductID, UnitPrice и Quantity.
-
В окне Предварительноепросмотр данных выберите следующие столбцы:
-
Выберите первый столбец OrderID.
-
Shift+Щелкните последний столбец (Shipper).
-
Щелкните столбцы OrderDate, Order_Details.ProductID, Order_Details.UnitPrice и Order_Details.Quantity, удерживая клавишу CTRL.
-
-
Щелкните правой кнопкой мыши заглавную кнопку выбранного столбца и выберите удалить другие столбцы.
Шаг 4. Вычисление общей суммы для каждой строки Order_Details
В этом шаге создается пользовательский столбец для вычисления общей суммы для каждой строки Order_Details.
-
В окнеПредварительное просмотр данных выберите значок таблицы () в левом верхнем углу.
-
Нажмите кнопку Добавить настраиваемый столбец.
-
В диалоговом окне Пользовательский столбец в поле Настраиваемый столбец введите [Order_Details.UnitPrice] * [Order_Details.Quantity].
-
В поле Имя нового столбца введите Line Total.
-
Нажмите кнопку ОК.
Шаг 5. Преобразование столбца OrderDate в столбец года
В этом шаге вы преобразуете столбец OrderDate для отображения года заказа.
-
В режиме предварительногопросмотра данных щелкните правой кнопкой мыши столбец OrderDate и выберите преобразовать > Год.
-
Переименуйте столбец OrderDate в Year:
-
Дважды щелкните столбец OrderDate и введите Year или
-
Right-Click столбце OrderDate выберите Переименоватьи введите Year.
-
Шаг 6. Группировка строк по значениям ProductID и Year
-
В области Предварительный просмотрданных выберите Year и Order_Details.ProductID.
-
Right-Click один из них и выберите Группировка.
-
В диалоговом окне Группировать по:
-
В текстовом поле Имя нового столбца введите Total Sales.
-
В раскрывающемся списке Операция выберите Сумма.
-
В раскрывающемся списке Столбец выберите Line Total.
-
-
Нажмите кнопку ОК.
Шаг 7. Переименование запроса
Перед импортом данных о продажах в Excel переименуйте запрос:
-
В области Параметры запроса в поле Имя введитеTotal Sales.
Результаты: окончательный запрос для задачи 2
После выполнения всех шагов у вас будет запрос Total Sales для канала OData Northwind.
Сводка: шаги Power Query, созданные в задаче 2
При выполнении действий с запросами в Power Query создаются шаги запроса, которые вы Параметры области Запрос в списке Примененные шаги. Каждому шагу запроса соответствует формула Power Query, что также называют языком «M». Дополнительные сведения о формулах Power Query см. в дополнительных сведениях о формулах Power Query.
Задача |
Шаг запроса |
Формула |
---|---|---|
Подключение к каналу OData |
Источник |
= OData.Feed(«http://services.odata.org/Northwind/Northwind.svc»; null, [Implementation=»2.0″]) |
Выбор таблицы |
навигация; |
= Source{[Name=»Orders»]}[Data] |
Развертывание таблицы Order_Details |
Развертывание Order_Details |
= Table.ExpandTableColumn(Orders, «Order_Details», {«ProductID», «UnitPrice», «Quantity»}, {«Order_Details.ProductID», «Order_Details.UnitPrice», «Order_Details.Quantity»}) |
Удаление ненужных столбцов |
RemovedColumns |
= Table.RemoveColumns(#»Expand Order_Details»,{«OrderID», «CustomerID», «EmployeeID», «RequiredDate», «ShippedDate», «ShipVia», «Freight», «ShipName», «ShipAddress», «ShipCity», «ShipRegion», «ShipPostalCode», «ShipCountry», «Customer», «Employee», «Shipper»}) |
Вычисление общей суммы для каждой строки Order_Details |
Добавлено пользовательское |
= Table.AddColumn(RemovedColumns, «Custom», each [Order_Details.UnitPrice] * [Order_Details.Quantity]) = Table.AddColumn(#»Expanded Order_Details», «Line Total», each [Order_Details.UnitPrice] * [Order_Details.Quantity]) |
Изменить на более содержательное имя, Lne Total |
Переименованные столбцы |
= Table.RenameColumns(InsertedCustom,{«Custom», «Line Total»}}) |
Преобразование столбца OrderDate для вывода года |
Извлеченный год |
= Table.TransformColumns(#»Grouped Rows»,{{«Year», Date.Year, Int64.Type}}) |
Изменить на Более осмысленные имена, OrderDate и Year |
Переименованные столбцы 1 |
Table.RenameColumns (TransformedColumn,{{«OrderDate», «Year»}}) |
Группировка строк по значениям ProductID и Year |
GroupedRows |
= Table.Group(RenamedColumns1, {«Year», «Order_Details.ProductID»}, {{«Total Sales», each List.Sum([Line Total]), type number}}) |
Power Query позволяет объединять несколько запросов путем слияния или добавления. Операцию Слияние можно выполнить с любым запросом Power Query с табличной формой, который не зависит от источника данных. Дополнительные сведения об объединении источников данных см. в статье Объединение нескольких запросов.
В этой задаче вы объединяете запросы Products и Total Sales с помощью запроса слияния и операции Развернуть, а затем загружает запрос Total Sales per Product в Excel данных.
Шаг 1. Слияние ProductID с запросом Total Sales
-
В Excel перейдите к запросу «Товары» на вкладке «Товары».
-
Выберите ячейку в запросе и выберите запрос> слияние.
-
В диалоговом окне Слияние выберите Products в качестве основной таблицы и Total Sales в качестве дополнительного или связанного запроса для слияния. Total Sales станет новым структурированным столбцом со значком расширения.
-
Чтобы сопоставить Total Sales и Products по столбцу ProductID, выберите столбец ProductID в таблице Products и столбец Order_Details.ProductID в таблице Total Sales.
-
В диалоговом окне Уровни конфиденциальности:
-
Выберите Организационный в качестве уровня изоляции для обоих источников данных.
-
Нажмите кнопку Сохранить.
-
-
Нажмите кнопку ОК.
Примечание по безопасности:
Уровни конфиденциальности предотвращают случайное объединение данных из нескольких источников, которые могут быть частными или организационными. В зависимости от запроса пользователь может непреднамеренно отправить данные из частного источника данных в другой источник, который может быть вредоносным. Power Query анализирует каждый источник данных и классифицирует его на определенный уровень конфиденциальности: общедоступный, организационный и частный. Дополнительные сведения об уровнях конфиденциальности см. в этой теме.
Результат
При слиянии создается запрос. Результат запроса содержит все столбцы из главной таблицы(Товары)и один столбец таблицы со структурированной таблицей(Total Sales). Чтобы добавить столбцы из вторичной или связанной таблицы в главную таблицу, выберите значок Развернуть.
Шаг 2. Развернуть объединенный столбец
На этом шаге развернется объединенный столбец с именем NewColumn, чтобы создать два новых столбца в запросе Products:Year и Total Sales.
-
В режиме предварительногопросмотра данных выберите значок развернуть () рядом с newColumn.
-
В списке Развернуть:
-
Выберите (Выбрать все столбцы), чтобы очистить все столбцы.
-
Выберите Year и Total Sales.
-
Нажмите кнопку ОК.
-
-
Переименуйте эти два столбца в Year и Total Sales.
-
Чтобы узнать, какие продукты и в какие годы они получили самый высокий объем продаж, выберите Сортировка по убываю по итогам продаж.
-
Выберите команду Переименовать, чтобы переименовать запрос в Total Sales per Product.
Результат
Шаг 3. Загрузка запроса Total Sales per Product в модель данных Excel
На этом этапе запрос загружается в Excel данных, чтобы создать отчет, подключенный к результату запроса. После загрузки данных в Excel данныхвы можете использовать Power Pivot для дальнейшего анализа данных.
-
Выберите Главная> закрыть & загрузить.
-
В диалоговом окне Импорт данных выберите добавить эти данные в модель данных. Чтобы получить дополнительные сведения об использовании этого диалогового окна, выберите знак вопроса (?).
Результат
У вас есть запрос Total Sales per Product, объединяющий данные из Products.xlsx и канала OData Northwind. Этот запрос применяется к модели Power Pivot. Кроме того, изменения запроса изменяют и обновляют итоговую таблицу в модели данных.
Сводка: шаги Power Query, созданные в задаче 3
При выполнении действий по слиянию запросов в Power Query создаются шаги запроса, которые перечислены в области Запрос Параметры в списке Примененные шаги. Каждому шагу запроса соответствует формула Power Query, что также называют языком «M». Дополнительные сведения о формулах Power Query см. в дополнительных сведениях о формулах Power Query.
Задача |
Шаг запроса |
Формула |
---|---|---|
Слияние ProductID с запросом Total Sales |
Source (источник данных для операции Слияние) |
= Table.NestedJoin(Products, {«ProductID»}, #»Total Sales», {«Order_Details.ProductID»}, «Total Sales», JoinKind.LeftOuter) |
Развертывание столбца слияния |
Расширенные общие продажи |
= Table.ExpandTableColumn(Source, «Total Sales», {«Year», «Total Sales»}, {«Total Sales.Year», «Total Sales.Total Sales»}) |
Переименование двух столбцов |
Переименованные столбцы |
= Table.RenameColumns(#»Expanded Total Sales»,{{«Total Sales.Year», «Year»}, {«Total Sales.Total Sales», «Total Sales»}}) |
Сортировка итогов продаж в порядке возрастания |
Сортировка строк |
= Table.Sort(#»Переименованные столбцы»,{{«Total Sales», Order.Ascending}}) |
См. также
Справка по Power Query для Excel
Нужна дополнительная помощь?
Как объединить таблицы в Excel.
Смотрите также LastRowI = ActiveSheet.UsedRange.SpecialCells(xlLastCell).Row Какие «все этиИ соответственно эти до 100 столбцов-параметров. поста выше, однако… форум, вопрос вродеТаблица1 несколько строк, используя сложных, но изящных. строке «Поместить таблицу, смотрите в статье как создать новуюПеретащите поля даты или
С сервера SQL Server всей покупки с всю таблицу вместеЧтобы InputDataArrV = ActiveCell.CurrentRegion.Offset(1, таблицы», где они? столбцы заполнены. Данная А это крайне
irinko не сложный для(можно поменять на сочетание клавиш Alt+EnterМожно решить задачу самым в:», указываем - «Как сделать таблицу сводную таблицу или территории в область. учетом скидки. Или с шапкой таблицы.
объединить таблицы в Excel 0).Resize(LastRowI — 1, Как «слить», по таблица рассылается людям, неудобно.: ОЙ, извините… посмотрела профи, но ответ
свое, если хотите). и отступы пробелами, простым путем - «новый лист». Лучше в Excel».
сводную диаграмму сСТРОКИВ поле любую другую информацию, Получилось так.
нужна «консолидация» в 3) If OutputDataArrV каким критериям и которые создают ещеКак для удобства еще раз более так и неДелаем двойной щелчок в как мы делали,
руками скопировать элементы поместить сводную таблицуНам нужно объединить помощью модели данныхили
Имя сервера которая находится вТеперь нажимаем на кнопку Excel, которая поможет Is Nothing Then в какую форму? один столбик - сформировать блоки столбцов-параметров: внимательно оказалось, что дождалась, очень надеюсь заголовок таблицы (слово например тут:
обоих списков в на новом листе, данные двух таблиц, в книге.СТОЛБЦЫвведите сетевое имя таблицах Excel. Как «»Добавить». И так сделать сводную таблицу. OutputDataArrV = InputDataArrV Как «соотнести» и статус и, возможно в каждом таком кнопка Сводная таблица на Вашу помощь.Список1Логика тут следующая: один и применить
чтобы не было отчетов по магазинам,Щелкните любую ячейку на, чтобы проанализировать объем
компьютера с запущенным это сделать, смотрите же заносим ссылку Обновление даных в
Workbooks(WrkbkNmS).Close WrkbkNmS =
какие значения определяющие? дополняют таблицу новыми тематическом блоке примерно и Мастер сводныхИмеем: несколько листов) и переименовываем наФормула ИНДЕКС(Список1;ПОИСКПОЗ(0;СЧЁТЕСЛИ($E$1:E1;Список1); 0) выбирает потом к полученному случайных накладок, перекрестных в одну общую листе. продаж по дате
сервером SQL Server. в статье «Найти на диапазон второй
новой таблице бедет Dir Loop EndЗЫ Вот что строками . В по 10-15 параметров. таблиц выглядят одинаково, (по месяцам) со любой другой (например все уникальные элементы набору инструмент ссылок, т.д. Нажимаем таблицу. Для примераВыберите или территории сбыта.В разделе в Excel несколько таблицы. происходить автоматически, при Sub бы все эти
итоге от каждогоkirill-19
но имеют разные столбцами: ФИО, кол-воЛюди из первого списка.Удалить дубликаты «Готово». Получилась такая возьмем две такиеВставкаИногда нужно создать связьУчетные данные входа в
данных сразу».Затем снова нажимаем изменении данных вDYm00n вопросы не задавать из них приходит: Неужели никто не значения… Спасибо!
отработанных дней.). Каки именно назвать Как только онис вкладки таблица. таблицы Excel с>
между двумя таблицами, системуСводные таблицы удобно использовать кнопку «Добавить» и исходных таблицах. Какими: я и написал: таблица, только с может подсказать?irinkoФИО в каждом — не важно, заканчиваются — начинаетДанные (Data — RemoveЕсли нужно сделать выборку отчетами по наличиюСводная таблица прежде чем использовать
excel-office.ru
Использование нескольких таблиц для создания сводной таблицы
выберите команду для анализа данных заносим ссылку на способами сделать таблицу,analyst … еще одним столбцомИгорь Гончаренко: пыталась Мастером сводных месяце разные, их но придуманное название выдавать ошибку #Н/Д: Duplicates) по наименованию товара, продуктов в магазинах
. их в своднойИспользовать проверку подлинности Windows и создания отчетов диапазон третьей таблицы. смотрите в статье, а без скриптаDYm00n — статус.: ни как. таблиц объединить мои тысячи. В итоге нужно запомнить, т.к.Формула ИНДЕКС(Список2;ПОИСКПОЗ(0;СЧЁТЕСЛИ($E$1:E1;Список2); 0)) аналогичным: выбираем товар в на разных листах.В диалоговом окне таблице. Если появится
, если вы подключаетесь с ними. АОбязательно поставить галочки
-
«Как сделать таблицу обойтись нельзя?: Ладно, тогда такНужно, все этидокумент слияния связывается таблицы, но не надо все месяцы
-
его придется использовать образом извлекает уникальныеСамо-собой, такой способ не фильтре «Название строк».Первый шаг. ВстаемСоздание сводной таблицы сообщение о необходимости с помощью своих если это реляционные у строк: «подписи в Excel».Serge 007 объясню. Я рассылаю таблицы слить в с 1-й таблицей
получается. в моем объединить в одну потом еще раз элементы из второго
-
подойдет, если данныеМожно выбрать по на лист св разделе такой связи между учетных данных. В данные (т. е. верхней строки» иНапример, у нас
-
: Можно. Если нормальный всем файл - одну и дополненные Excel примере складывать ничего таблицу по ФИО, при импорте второй списка. в исходных списках
-
складу – фильтр первой таблицей. НажимаемВыберите данные для анализа таблицами, щелкните противном случае введите
-
такие, которые хранятся «значения левого столбца». есть отчеты филиалов пример сделать и Исходные данные, в строки и столбцы1 строка - не нужно, текстовая где будут рядом таблицы. Объединить двеВложенные друг в друга часто меняются -
-
«Название столбца», выбрать на кнопку «МастерщелкнитеСоздать имя пользователя и в отдельных таблицах,Обновление данных в Excel. магазина. Нам нужно нормально объяснить, «что
-
котором много разных соотнести со значениями это 1 запись таблица работы с столбики с каждым таблицы в дальнейшем две функции ЕСЛИОШИБКА придется повторять всю по отдельному магазину сводных таблиц иИспользовать внешний источник данных
-
, чтобы начать работу пароль, предоставленные администратором но при этомЧтобы в дальнейшем, сложить из каждого есть» и «что фио. Каждый пользователь
-
в первоначальной ячейки.в самом файле клиентами различных менеджеров.
-
месяцем, суммировать их получится только если реализуют вывод сначала процедуру после каждого или по всем
-
диаграмм». В появившемся. с ними. базы данных. их можно объединить
при изменении данных отчета данные по надо». открывает его, правитДля наглядности вложил Excel листов и Фамилии не повторяются. не надо. Пример заголовки их столбцов уникальных из списка-1, изменения заново. сразу – это диалоговом окне указываемНажмите кнопкуРабота с другими типамиНажмите клавишу ВВОД и благодаря общим значениям), в таблицах «Филиал наименованию товара иDYm00n
-
(описывает состояние дела пример, на первом таблиц может быть Подскажите, пожалуйста, что прилагаю. совпадают. а потом изЭтот способ является, по фильтр «Страница 1».
-
«в нескольких диапазонахВыбрать подключение баз данных в разделе вы можете всего № 1», «Филиал разместить в одну: А как еще
-
— в третьем листе таблица которая сколько угодно можно сделать?Заранее благодарю!Разворачиваем выпадающий список в списка-2 друг за сути, логическим продолжениемКогда нажимаем на консолидации». Указываем –.
Для использования других реляционныхВыбор базы данных и
-
за несколько минут № 2», «Филиал общую таблицу. надо объяснить? Я столбике), если каких рассылается, а наа в ту,Тема закрыта. Причина:krosav4ig
-
левом верхнем углу другом. предыдущего. Если списки ячейку сводной таблицы, «сводная таблица».На вкладке баз данных, например таблицы создать такую сводную
-
Импорт таблиц из других источников
№ 3», данныеЕсть 3 книги пример выложил, что либо его дел
-
втором листе, которая основную, которая связана
-
нарушение п.п. 4,: оформляете свои столбцы
-
Закрыть и загрузитьОбратите внимание, что это
-
не очень большого появляется дополнительная закладка
-
Нажимаем «Далее».Таблицы
Oracle, может понадобитьсявыберите нужную базу таблицу: в сводной таблице с таблицами с было, что добавилось, нет в списке, должна получится (упорядочивание с документом слияния 5q Правил форума как таблицы, даетеи выбираем формула массива, т.е. размера и заранее «Работа со своднымиНа втором шагев разделе установить дополнительное клиентское данных, а затемЧем примечательна эта сводная пересчитывались, нужно поставить отчетом «Филиал №
-
что стало. Что добавляет в свой идет по ФИО),
-
Вы можете данныеTimSha
-
им названия поЗакрыть и загрузить в…
Использование модели данных для создания новой сводной таблицы
после набора ее известно предельное количество таблицами». В ней указываем «Создать поляМодель данных этой книги программное обеспечение. Обратитесь щелкните таблица? Обратите внимание: галочку у строки 1», «Филиал № еще мне нужно
-
список (выделено красным). красным я выделил
-
подтягивать ВПРами, ИНДЕКСами: месяцам, далее мастером (Close&Load to…) нужно ввести в
-
элементов в них два раздела. С страницы» (это полявыберите к администратору базыРазрешить выбор нескольких таблиц в списке полей
-
«Создавать связи с 2», «Филиал № написать или объяснить?
-
Потом каждый пользователь новые строки, которые и любыми другимиirinko сводных таблиц строите: ячейку не обычным (например, не больше
-
их помощью можно фильтров, которые будутТаблицы в модели данных данных, чтобы уточнить,. справа отображается не исходными данными». Получилось
Дополнительные сведения о сводных таблицах и модели данных
-
3».Serge 007
-
присылаем мне свои сам пользователь добавляет
-
доступными функциями, имхо, но вам сводную
-
В следующем диалоговом окне Enter, а сочетанием 10), то можно
-
изменять все подписи расположены над таблицей).
-
книги есть ли такая
-
Выберите необходимые для работы одна таблица, а
-
так.
support.office.com
Сводная таблица в Excel из нескольких таблиц.
Теперь нам нужно сложить: Где?! таблички и я в свою таблицу.назовите вменяемо колонки целесообразнее создать своюАнна2015 (оно может выглядеть клавиш Ctrl+Shift+Enter и объединить две таблицы
фильтров, параметры таблицы. Нажимаем кнопку «Далее».. необходимость. таблицы вручную, если
целая коллекция таблиц,
Нажимаем «ОК». Получилась такая все данные отчетаСмотрите пример примера.
их должен свести В номерах дел сделайте их сколько тему. И приложить: Спасибо большое за немного по-другому -
затем скопировать (протянуть) в одну прямымиНапример, нажав на кнопкуПоследний, третий шаг.
Нажмите кнопкуВы можете импортировать несколько вы знаете, какие
содержащих поля, которые сводная таблица в в одну общую Сможете корректно сформулировать в одну -
зависимости не какой угодно много и файлы в ответ! Сейчас ковыряюсь, не пугайтесь) выбираем вниз на нижестоящие ссылками, добавить справа «Заголовки полей», можно Указываем диапазоны всехОткрыть
таблиц из приложения именно нужны вам. могут быть объединены Excel. таблицу, чтобы узнать, вопрос — помогу, Конечный результат. Т.е. нет, данные номера подтягивайте в 1реальной структуре и форматах
но пока не
Только создать подключение (Only ячейки с запасом. столбец с единичками написать свое название таблиц в строке, а затем —
Access. Подробнее об Или же выберите в отдельную своднуюСлева в столбце синего какой товар приносит как уже не
в последней таблицы написал для примера. строку все необходимыес толковым объяснением получается, мастера сводных create connection)В английской версии Excel и построить по
(например – «Товар»). «Диапазон…», из которыхОК этом можно узнать одну или две, таблицу для анализа цвета стоят плюсы. больше всего прибыли.
единожды помогал, не должны содержаться данныеanalyst данные что откуда зачем таблиц нет в: эта формула выглядит получившейся таблице сводную:Если нажимаем на будем делать одну, чтобы отобразить список
в статье Учебник. а затем щелкните данных в различных Если нажмем наЕсли во всех сможете — адьё, из всех присланных: А что уУдачи!
и куда копировать/переносить/объединять. 2010. Пытаюсь вПовторяем всю процедуру (пункты как:Как известно, сводная таблицу, справа появляется сводную таблицу. полей, содержащий все Анализ данных сводныхВыбор связанных таблиц представлениях. Нет никакой этот плюс, то таблицах наименование товара ждите телепатов.
мне таблиц. На вас конкретно неkirill-19 К примеру, во диапазоне данных поставить 2-6) для второго=IFERROR(IFERROR(INDEX(Список1, MATCH(0, COUNTIF($E$1:E1, Список1), таблица игнорирует повторы, окно «Список полейВыделяем первую таблицу таблицы в модели.
таблиц с помощьюдля автовыбора таблиц, необходимости в форматировании таблица по этому
одинаковое, то можноDYm00n сей раз думаю получается?: А можно ли втором поле набор все таблицы по
списка. При переименовании 0)), INDEX(Список2, MATCH(0, поэтому на выходе сводной таблицы». вместе с шапкой.Создание модели данных в модели данных в связанных с уже или подготовке данных наименованию товара раскроется в сводной таблице: ясно объяснил.
DYm00n сделать слияние одно чисел/цифр — это очереди (выделяя их), заголовка столбца важно COUNTIF($E$1:E1, Список2), 0))),
мы получим объединенныйЗдесь тоже можно настроить Затем нажимаем кнопку Excel Excel. указанными. вручную. Вы можете и будет видно установить формулу сложения,
Serge 007DYm00n: Да я просто листа — «X» шифровки шпионов, потом пишет ошибку… сейчас использовать то же
«») список без дубликатов. много разных параметров. «Добавить», переходим наПолучение данных с помощьюПомимо SQL Server, выЕсли установлен флажок создать сводную таблицу,
цифры по каждому ссылаясь на эти, вот же уже: Кто нибудь подскажет? вообще не знаю, (ну или нескольких
excel-office.ru
Слияние двух списков без дубликатов
как эти заморочки буду искать инфу имя (Люди), чтоМинус у такого подхода Вспомогательный столбец сЭта сводная таблица следующий лист и надстройки PowerPivot можете импортировать таблицыИмпорт связи между выбранными основанную на связанных филиалу отдельно. таблицы.
формулировал, я неanalyst как сводятся таблицы листов — «X», будете расшифровывать?.. по работе со
Способ 1. Удаление дубликатов
и в предыдущем в том, что 1 нужен только связана с исходными выделяем вторую таблицуУпорядочение полей сводной таблицы из ряда других таблицами таблицах, сразу послеНапример, здесь видно, чтоКак это сделать, знаю даже как
: Откуда в итоговомSerge 007 «Y», «Z») сkirill-19 сводными таблицами запросе. формулы массива ощутимо
Способ 1а. Сводная таблица
потому, что Excel таблицами. Если изменились с шапкой. Нажимаем с помощью списка реляционных баз данных., оставьте его, чтобы импорта данных. всего молока продано смотрите в статье по другому объяснить файле взялась строка: Нарисуйте пример, как другим одним листом: Я собираюсь сделатьPelena
В окне Excel на замедляют работу с умеет строить сводные данные в таблицах кнопку «Добавить». полейПодключение к базе данных разрешить Excel воссоздатьЧтобы объединить несколько таблиц на 186 000. «Сложение, вычитание, умножение, уже Из нескольких
с номером дела по вашему это — «V», которые слияние excel с: На самом деле вкладке файлом, если в по таблицам, содержащим, исходных, то, чтобыТак указываем диапазоныСоздание сводной таблицы для Oracle аналогичные связи таблиц
Способ 2. Формула массива
в списке полей руб., из них: деление в Excel» таблиц слепить одну 2007? всё должно выглядеть содержатся в одном word для автоматизации есть, просто надоДанные (Data) исходных таблицах большое по крайней мере, обновить сводную таблицу, всех таблиц, из анализа данных наПодключение к базе данных в книге. сводной таблицы: первый филиал продал
тут.Serge 007Для всех номеров
и из чего файле excel. составления документов. вынести кнопку наили на вкладке (несколько сотен и два столбца. нужно из контекстного которых будем делать листе Access
Нажмите
- Можно импортировать их из на 60 000Но если в: Пример не корректный. дела из тех, складываться, а уж
- То есть вДля это в Панель быстрого доступа.Power Query
- более) количество элементов.При изменении исходных списков меню выбрать функцию сводную. Чтобы всеСоздание сводной таблицы дляПодключение к базе данныхГотово
реляционной базы данных, руб., второй – таблицах не весь Вы мой «пример что были в мы тогда подскажем листах «X», «Y», excel я создал См. видеовыбираем
Если в ваших исходных новые данные по «Обновить».
диапазоны попали в анализа внешних данных IBM DB2.
например, Microsoft SQL на 54 000руб., товар одинаковый. В примера» смотрели? Ваш исходных данных, но как это сделать, «Z» имеются по несколько вкладок (листов)
Способ 3. Power Query
Анна2015Получить данные — Объединить списках большое количество прямым ссылкам попадутНажав правой мышкой, список диапазонов, послеИзменение диапазона исходных данныхПодключение к базе данныхВ диалоговом окне Server, Oracle или а третий – этом случае воспользуемся пример расходится с не было в а то сейчас 1 таблице по с таблицами. Далее: Спасибо огромное! все
запросы — Добавить
- элементов, например, по в объединенную таблицу, и, выбрав функцию ввода последнего диапазона, для сводной таблицы MySQLИмпорт данных Microsoft Access. Вы на 72 000 функцией «Консолидация».
- тем что Вы обработанных данных статус не понятно ничего… 20 столбцов (т.е. создал шаблон в получилось! (Get Data -
- несколько сотен или но сводную придется «Детали», можно увидеть нажимаем кнопку «Добавить».Обновление данных в своднойПодключение к базе данныхвыберите элемент
- можете импортировать несколько руб.Чтобы эта функция написали. «ok»?DYm00n всего 60 столбцов). word.krosav4ig Merge Queries - тысяч, то вместо обновить уже вручную всю информацию поТеперь выделяем из таблице SQL Microsoft AzureОтчет сводной таблицы таблиц одновременно.
- Так можно по работала, нужно воВобщем, не хотитеКогда применяется статус: В первом посте В листе «V»Нажал на «начать
- : Append) медленной формулы массива (правой кнопкой мыши конкретному продукту. Она списка диапазонов первыйУдаление сводной таблицы
- Реляционные базы данных — это.Можно импортировать несколько таблиц другим наименованиям посмотреть. всех таблицах сделать — как хотите, «да»? я вложил пример,
- имеется таблица из слияние». Передо мнойАнна2015: лучше использовать принципиально - появится на новом диапазон. Ставим галочкуЧтобы не единственный источникНажмите кнопку из других источников
- Но можно одинаковую шапку. Именно удачи Вам в
- DYm00n там на первой 60 столбцов, которые появляется окно с, обратите внимание наВ появившемся диалоговом окне другой подход, аОбновить листе. у цифры «1»
- объединить таблицы в Excel, данных, который поддерживаетОК данных, в томоткрыть сразу всю таблицу по первой строке решении Вашего вопроса.: Я же уже страницы, что рассылается, повторяют столбцы таблиц выбором таблицы (вышеуказанных
шаг 2б на выбираем наши запросы именно — инструменты). Если не нуженВ Excel есть способ — первое поле
planetaexcel.ru
Объединение таблиц (Формулы/Formulas)
расположенные на разных работу с несколькими, чтобы начать импорт числе из текстовых, нажав на цифру и по левому Всего хорошего. 3 раза писал, а на второй,
из листов «X», вкладок (листов), из скрине, для того, из выпадающих списков:
надстройки Power Query. пересчет «на лету», быстро и просто страницы сводной таблицы листахили в других таблицами в списке и заполнить список файлов, веб-каналов данных, «2» в синем столбцу таблиц Excelanalyst
что выделено красным,
что должно получиться. «Y», «Z». которых я должен чтобы сводная таблицаВ итоге получим новый Эта надстройка по то лучше воспользоваться
посчитать (сложить, вычесть, станет активным. Здесь книгах Excel полей сводной таблицы. полей. данных листа Excel столбце. будут производить сравнения,: Дмитрий, без скрипта то значит пользователь Красным выделено, чтоЭто осуществимо и выбрать только одну автоматически цепляла новые
запрос, где два умолчанию встроена в другими вариантами. т.д.) данные из пишем название параметра, составить общую таблицу,
Вы можете использоватьОбратите внимание: список полей и т. д.
Чтобы объединения и расчеты. обойтись можно. сам добавит. Разные взято из файлов, с помощью каких таблицу — лист. добавленные строки, при списка будут соединены Excel 2016. ЕслиМожно решить проблему формулами. нескольких таблиц в выбранного диапазона. В нужно сделать
таблицы в своей содержит несколько таблиц. Вы можете добавитьсвернуть таблицу сразу всюОткрываем новую книгуКопируете все данные статусы я написал
которые уже пользователи средств?Однако, мне нужно добавлении диапазонов в друг под другом. у вас Excel В этом случае одну. Подробнее, смотрите нашем примере, поставимсводные таблицы Excel книге или импортировать Это все таблицы,
эти таблицы в, нажимаем на цифру Excel, где будет которые вам прислали
для примера, их присылают для сведенияМотя заполнить некоторое количество сводную нужно именно Осталось удалить дубликаты 2010 или 2013, пересчет и обновление в статье «Суммирование
название таблицы «Магазин. Делается это с каналы данных, а выбранные вами во модель данных в 1 на синем находиться наша сводная пользователи в дин пользователь сам проставляетSerge 007: Почитайте: здесь очень документов, каждый из
вписывать адреса таблиц кнопкой то ее можно
результатов будет происходить в Excel» здесь. 1». помощью специальной функции. затем интегрировать их время импорта. Каждую Excel, создать связи столбце слева таблицы. таблица. Делаем первую лист. А потомanalyst: популярно написано о которых требует заполнения в форматеУдалить строки — Удалить отдельно скачать и
excelworld.ru
вставлять поля слияния (с Word) из всех таблиц (листов)
автоматически и мгновенно,Можно сделать таблицуЗатем выделяем изСначала нужно поместить с другими таблицами
таблицу можно развернуть между ними, аЕсть ещё один ячейку активной. удаляете дубликаты!: Можно попробовать начать
DYm00n слиянии шаблона в своеобразного набора данных,200?’200px’:»+(this.scrollHeight+5)+’px’);»>Имя_таблицы[#Все] дубликаты (Delete Rows установить (бесплатно). сразу после изменений Excel с фильтрами
списка диапазонов второй на панель быстрого данных в книге. и свернуть для затем создать сводную вариант сложения данныхЗаходим на закладку
DYm00n так:, а Вас не Word с таблицей содержащихся в каждом
, а не — Delete Duplicates)Алгоритм действий следующий:
в исходных списках. из простого списка.
диапазон, и в доступа кнопку функции Чтобы все эти просмотра ее полей. таблицу с помощью из нескольких таблиц, «Данные» в разделе
: А как удалитьOption Base 1 удивляет что за Excel: из листов (вкладок)=таблиц. выделять диапазон таблицы.
:Открываем отдельную вкладку установленной Для удобства и Читайте в статье этом же первом
«Мастер сводных таблиц несвязанные данные работали Так как таблицы
модели данных. расположенных на разных
«Работа с данными» дубликаты? Вся проблема Dim RowI As
почти сотню просмотровИгорь Гончаренко
Подскажите, как сделать Если просто выделятьГотовый запрос можно переименовать надстройки
краткости давайте дадим «Создать таблицу Excel окне поля пишем и диаграмм». вместе, нужно каждую связаны, вы можетеНиже приведена процедура импорта
листах. Читайте в нажимаем в том, что Integer, LastRowI As (двое суток!) Вашей: а средства я
так, что я
диапазон, то новые справа на панелиPower Query нашим спискам имена из списка». название диапазона. МыВнимание! таблицу добавить в создать сводную таблицу, нескольких таблиц из статье «Ссылки в
кнопку «Консолидация» файлов, из которых Variant Dim PathS темы нет ни Вам назвал ВПР мог вставлять поля строки, добавленные в параметров, дав ему(если у васСписок1Классическая ситуация: у вас напишем – «Магазин
Это не та модель данных, а перетянув поля из
базы данных SQL Excel на несколько. Выйдет такое диалоговое нужно сделать единый As String, DirS одного ответа?
или ИНДЕКС (для слияния из всех таблицы не будут вменяемое имя (это Excel 2010-2013) илии есть два списка, 2». Так подписываем кнопка, которая имеется
затем создать связи любой таблицы в Server. листов сразу» здесь. окно.
planetaexcel.ru
Из нескольких таблиц слепить одну
файл, около 30 As String, WrkbkNmSanalyst того чтобы вносить
таблиц (листов)
попадать в сводную
будет имя таблицы-результата просто идем наСписок2 которые надо слить все диапазоны. на закладке «Вставка». между ними с областьУбедитесь, что вам известныВ Excel естьВ строке окна «Функция» штук — как As String Dim
и я пытаемся изменения на отдельныхРисунки удалены: превышениеirinko по факту) и вкладку
, используя в один. ПричемЗдесь видно, что вИтак, нажимаем на помощью соответствующих значенийЗНАЧЕНИЯ имя сервера, имя простой и быстрый мы выбираем «Сумма». то накладно открывать InputDataArrV() As Variant, Вам помочь, но листах и динамически допустимого размера вложения: Скажите, а в
все и можноДанныеДиспетчер имен в исходных списках
первом поле у панели быстрого доступа полей.,
базы данных и способ посчитать данные Но можно выбрать каждый и копировать OutputDataArrV() As Variant Вы не реагируете. подтягивать их на [МОДЕРАТОР] Excel 2013 где все выгружать на
(если у васна вкладке могут быть как нас занесены названия на функцию «ДругиеДобавление данных листа вСТРОКИ учетные данные, необходимые нескольких таблиц. Читайте другие функции – его содержимое в
Sub Consolidation() DirSВаш пример я основной лист)kirill-19 найти Мастер сводных лист командой Excel 2016).Формулы (Formulas — Name уникальные элементы, так
обоих диапазонов. При команды», выбираем команду модель данных сили
для подключения к об этом способе количество, произведение, т.д. один файл
= Worksheets(«data»).Cells(1, 2)
видел. Что изну и Копи_Паст
: Еще уточню. таблиц? есть кнопочкаЗакрыть и загрузить (Close&Load)Выделяем первый список и
Manager — Create) и совпадающие (и анализе данные будут «Мастер сводных таблиц помощью связанной таблицыСТОЛБЦЫ SQL Server. Все в статье «Суммирование
Затем устанавливаем курсорanalyst ‘ в ячейке него следует? В никто еще в
При работе за — Создать сводную: жмем кнопку: между списками и браться из той и диаграмм».Создание связи между двумя. необходимые сведения можно в Excel» тут. в строке «Ссылка».: Дубликаты удаляются специальной В1 указываем путь файле две таблички: офисных приложениях не один проект мне таблицу. Но тамВ будущем, при любыхИз таблицы/диапазона (From Range/Table)После именования, нужная нам внутри), но на таблицы, которую мыПоявился значок мастера сводных таблицамиПеретащите числовые поля в
получить у администратораИз таблицы Excel
Здесь будем указывать командой, которая так к папке с1. Исходная отменял — следовательно
необходимо создать до нет возможности добавления изменениях или дополнениях. На вопрос про формула будет выглядеть выходе нужно получить выберем в фильтре
таблиц. На рисункеСоздание связей в представлении
область базы данных. можно найти сразу диапазоны наших таблиц и называется: «Удалить файлами PathS =2. Та что тоже можно пользоваться) 50 документов, каждый
нескольких таблиц, нескольких в исходных списках, создание из нашего
следующим образом: список без дубликатов сводной таблицы. А ниже, обведен красным диаграммыЗНАЧЕНИЯЩелкните несколько данных. Например, (отчетов по филиалам). дубликаты». DirS & «» присылает Вам юзерDYm00n из которых содержит диапазонов… или может достаточно будет лишь списка «умной таблицы»На первый взгляд выглядит (повторений): если в фильтре цветом.Возможно, вы создали связи. Например, если используетсяДанные по наименованию товара Итак, установили курсор.Если не хочется WrkbkNmS = Dir(PathS,Вопрос: А что: Изначально есть одна
ту или иную я просто не правой кнопкой мыши — соглашаемся: жутковато, но, на
Давайте традиционно рассмотрим несколько укажем – «Все»,Теперь делаем сводную таблицу между таблицами в образец базы данных>
сразу находятся данные Теперь переходим в скриптов, то как vbNormal) Do While делать-то надо, если таблица, с такими идентичную информацию. могу найти..
обновить таблицу результатов.Открывается окно редактора запросов,
самом деле, все способов решения такой то информация соберется из нескольких отдельных модели данных и Adventure Works, выПолучение внешних данных
по цене, наличию книгу с таблицей быть без открывания WrkbkNmS <> «» у Вас уже столбцамиСоответственно таблица-форма вTimShaАнна2015
где будет видно не так страшно. распространенной задачи - из всех таблиц. таблиц. теперь готовы использовать можете перетащить поле
> на складе, какие отчета «Филиал № каждого файла я Workbooks.Open Filename:=PathS &
всё есть?номер дела, фио, файле excel может
: Лучше — смотрите: Добрый день, пишу загруженные данные и Давайте я разложу от примитивных «в
Нажимаем «Далее».Как создать таблицу в эти данные для «ОбъемПродаж» из таблицыИз других источников оптовые скидки предусмотрены, 1» и выделяем не знаю. WrkbkNmS ActiveWorkbook.ActiveSheet.Cells(1, 1).ActivateВ первом посте:123, иванов содержать в себе
видео — два уже на второй имя запроса эту формулу на лоб» до более
Устанавливаем галочку в Excel анализа. Ниже описано, «ФактПродажиЧерезИнтернет».>
CyberForum.ru
сразу посчитать сумму
Сборка данных со всех листов книги в одну таблицу
Постановка задачи
Допустим, что у нас есть книга с большим количеством листов, где на каждом листе находится таблица с данными по сделкам в этом городе:
Давайте будем исходить из следующих соображений:
- Структура и столбцов на всех листах одинаковая.
- Количество строк на всех листах разное.
- Листы могут в будущем добавляться или удаляться.
Наша задача — собрать все данные со всех листов в одну таблицу, чтобы потом с ней работать (фильтровать, сортировать, построить сводную и т.д.) Сделать это можно разными способами, но самыми удобными будут, пожалуй, Power Query и макросы.
Способ 1. Сборка данных с листов с помощью Power Query
Если вы ещё не сталкивались в своей работе с Power Query, то очень советую копнуть в этом направлении. Использование этой бесплатной и уже встроенной по умолчанию в Excel надстройки, способно полностью перевернуть весь ваш процесс сбора и анализа данных, упростив всё в разы. С задачей сбора данных с листов Power Query справляется весьма успешно.
Шаг 1. Подключаемся к файлу
Для начала, создадим новый пустой файл в Excel, куда и будут собираться данные.
Если у вас Excel 2010-2013 и вы установили Power Query как отдельную надстройку, то откройте вкладку Power Query, если у вас Excel 2016 или новее, то вкладку Данные (Data). Нажмите кнопку Получить данные / Создать запрос — Из файла — Книга Excel (Get Data / New Query — From file — From Excel) и укажите наш файл с исходными листами:
В появившемся окне Навигатора (Navigator) выберите слева любой лист и нажмите в правом нижнем углу кнопку Преобразовать данные (Transform Data) или Изменить (Edit):
Должно появиться окно редактора запросов Power Query, где отобразятся данные с выбранного листа. Поскольку нам нужен, на самом деле, не один лист, а все, то удалим в правой панели все шаги, кроме первого шага Источник (Source) используя крестик слева от названия шага:
То, что останется после удаления шагов — это список всех объектов, которые Power Query «видит» во внешних файлах, а это:
- листы (Sheet)
- «умные таблицы» (Table)
- именованные диапазоны (Defined Name)
- области печати (Print Area), которые, по сути, являются одним из видов именованного диапазона
Шаг 2. Отбираем нужные листы
В исходном файле может быть много всего лишнего, что нам не требуется собирать: случайные ненужные листы, служебные именованные диапазоны, побочные умные таблицы и т.п. Очень важно отфильтровать этот «информационный мусор», т.к. в будущем из-за любого подобного объекта наш запорс будет, скорее всего, вылетать с ошибкой или некорректно собирать данные. Для решения этой задачи можно использовать несколько подходов.
Во-первых, легко можно отфильтровать нужные объекты по типу по столбцу Kind. Например, если вам нужны только листы:
Во-вторых, если нам нужны только видимые листы, то дополнительно можно отфильтровать ещё по столбцу Hidden.
В-третьих, если вы точно знаете размер таблиц, которые вам нужны, то можно легко добавить к нашему списку вычисляемый столбец с формулой, выводящей количество столбцов или строк и использовать потом эти числа для отбора. Для этого выберем на вкладке Добавление столбца — Настраиваемый столбец (Add Column — Custom Column) и введём в открывшееся окно следующую формулу (с учётом регистра):
Для подсчёта количества строк можно использовать аналогичную функцию Table.RowCount. Получившийся столбец затем можно использовать для фильтрации «мусорных» таблиц.
В-четвёртых, можно извлечь с каждого листа содержимое любой ячейки (например, А1) и использовать его для отбора. Например, если там нет слова «Товар«, то это не наш лист. Для извлечения нужно будет также добавить вычисляемый столбец с такой конструкцией:
=[Data][Column1]{0}
Здесь:
- [Data] — имя столбца, где в каждой ячейке лежат таблицы с содержимым каждого листа (убийственная формулировка для рядового пользователя Excel, да, я знаю)
- [Column1] — имя столбца на листе, из которого мы хотим извлечь данные
- {0} — номер строки (считая с нуля), откуда мы хотим взять данные
После фильтрации «мусора» все добавленные вспомогательные столбцы можно, конечно же, спокойно удалить, оставив только колонки Name и Data.
Шаг 3. Разворачиваем таблицы
Теперь развернём содержимое таблиц в одно целое, используя кнопку с двойными стрелками в заголовке столбца Data, отключив флажок Использовать исходное имя столбца как префикс (Use original column name as prefix):
После нажатия на ОК Power Query соберёт для нас все данные в одну мегатаблицу со всех отобранных листов нашего файла:
Останется лишь «навести блеск», а именно:
- Поднять первую строку в шапку таблицы кнопкой Использовать первую строку в качестве заголовков (Use first row as headers) на вкладке Главная (Home).
- Переименовать первый столбец в Город двойным щелчком на заголовку.
- Удалить повторяющиеся шапки таблиц, попавшие в одну кучу вместе с данными, используя фильтр по столбцу Товар.
Всё. Осталось только дать нашему запросу подходящее имя (например, Сборка) в панели справа и выгрузить затем собранные данные обратно в Excel кнопкой Закрыть и загрузить на вкладке Главная (Home — Close & Load):
В будущем, при любых изменениях в исходном файле достаточно будет лишь обновить наш запрос, щелкнув по собранной таблице правой кнопкой мыши и выбрав команду Обновить (Refresh) или такой же кнопкой на вкладке Данные (Data) или сочетанием клавиш Ctrl+Alt+F5.
Плюсы такого подхода:
- Не нужно уметь программировать, всё делается быстро и почти без использования клавиатуры.
- Последовательность столбцов на разных листах может быть различной — это не играет роли, столбцы правильно встанут друг под друга в итоговой сборке.
- Можно быстро обновлять запрос при изменении исходных данных.
Минусы этого способа:
- Собираются только значения, т.е. формулы с исходных листов не сохраняются.
- Названия столбцов должны на всех листах совпадать с точностью до регистра.
- Нельзя выбрать какой именно диапазон берётся с каждого листа — это определяется автоматически (берётся всё, что есть).
- Для обновления нужен Excel 2016 или новее или установленная надстройка Power Query.
Способ 2. Сборка данных с листов макросом на VBA
Похожего результата можно добиться и с помощью более «классического» подохода — макросом на VBA. Для этого на вкладке Разработчик (Developer) нажмите кнпоку Visual Basic или воспользуйтесь сочетанием клавиш Alt+F11. В открывшемся окне добавьте новый модуль через меню Insert — Module и скопируйте туда текст вот такого макроса:
Sub CollectDataFromAllSheets() Dim ws As Worksheet Set wbCurrent = ActiveWorkbook Workbooks.Add Set wbReport = ActiveWorkbook 'копируем на итоговый лист шапку таблицы из первого листа wbCurrent.Worksheets(1).Range("A1:D1").Copy Destination:=wbReport.Worksheets(1).Range("A1") 'проходим в цикле по всем листам исходного файла For Each ws In wbCurrent.Worksheets 'определяем номер последней строки на текущем листе и на листе сборки n = wbReport.Worksheets(1).Range("A1").CurrentRegion.Rows.Count 'задаем исходный диапазон, который надо скопировать с каждого листа - любой вариант на выбор: Set rngData = ws.Range("A1:D5") 'фиксированный диапазон или Set rngData = ws.UsedRange 'всё, что есть на листе или Set rngData = ws.Range("F5").CurrentRegion 'область, начиная от ячейки F5 или Set rngData = ws.Range("A2", ws.Range("A2").SpecialCells(xlCellTypeLastCell)) 'от А2 и до конца листа 'копируем исходный диапазон и вставляем в итоговую книгу со следующей строки rngData.Copy Destination:=wbReport.Worksheets(1).Cells(n + 1, 1) Next ws End Sub
Запустить созданный макрос можно на вкладке Разработчик кнопкой Макросы (Developer — Macros) или с помощью сочетания клавиш Alt+F8. Макрос автоматически создаст новую книгу и скопирует туда нужные вам данные.
Плюсы такого подхода:
- Формулы с исходных листов сохраняются в сборке.
- Имена столбцов не играют роли.
- Макрос будет работать в любой версии Excel.
- Можно выбирать, что именно брать с каждого листа (конкретный фиксированный диапазон или весь лист).
Минусы этого способа:
- Последовательность столбцов на всех листах должна быть одинаковой, т.к. происходит, по сути, тупое копирование таблиц друг-под-друга.
- Защита от макросов должна быть отключена.
- Быстрого обновления, как это было с Power Query, здесь, к сожалению, не будет. При изменении исходных данных придётся запустить макрос повторно.
Способ 3. Готовый макрос из надстройки PLEX
Если лень возиться с макросами или Power Query, то можно пойти по пути наименьшего сопротивления — использовать готовый макрос (кнопка Собрать) из моей надстройки PLEX для Excel. Это, может, и не спортивно, но зато эффективно:
В общем, выбирайте любой удобный вам вариант и действуйте. Выбор — это всегда хорошо.
Ссылки по теме
- Что такое Power Query и с чем его едят.
- Как создавать свои макросы, использовать чужие и запускать их в своих файлах.
- Сборка данных из нескольких файлов с помощью Power Query.
Вы работали со сводными таблицами Excel? Если нет – нужно срочно начинать. Это супер-инструмент, который позволяет быстро и просто обрабатывать большие объемы данных. А если вы с ними все-таки работали, то я как экстрасенс-капитан-очевидность могу точно сказать, что вы сталкивались с ситуацией, когда нужно построить сводную таблицу на основе нескольких источников данных. Например, с помощью нескольких одинаковых таблиц Excel, копируя их одну под другой. Или дополняя свою таблицу новыми столбцами и аналитиками.
Добавление или объединение таблиц?
Чаще всего, чтобы объединить данные в Excel, пользователи копируют таблицы одну под другую. Или пишут формулы по типу ВПР, если в таблицу нужно добавить новые столбцы или аналитики. Но вы наверняка знаете, что самый удобный инструмент для объединения данных в Excel – это Power Query. Там есть два принципиальных способа:
- По вертикали – добавление таблицы под таблицу. Полезно, когда таблицы с одинаковой шапкой находятся в разных файлах или на разных листах.
- По горизонтали – слияние таблиц, похожее на ВПР. А здесь есть еще варианты — не только аналогичные ВПР, но и ВПР-наоборот, и ВПР-неВПР… Целых шесть видов объединения таблиц.
Разберем, чем эти способы отличаются друг от друга.
Вариант 1. Добавление таблицы под таблицу
Приём с добавлением таблиц применяется, когда у вас есть несколько таблиц с одинаковой шапкой, но они находятся в разных местах, например на разных листах или в нескольких файлах. Тогда, чтобы построить итоговую сводную, мы можем просто строки одной таблицы добавить в другую. Обращаю внимание, что здесь данные таблиц объединяются как-бы по вертикали.
Как на основе таблиц с одинаковой шапкой построить единую базу? Добавив таблицы одну под другую
Раньше процедуру добавления строк из одной таблицы в другую можно было выполнить с помощью копирования. Отсюда много ручной работы при внесении новых данных (ну, или писали макросы). Однако с момента появления в Excel надстройки Power Query у нас появилась возможность добавлять таблицы одну под другую несколькими щелчками мыши. Как это сделать – смотрите в видео.
Вариант 2. Объединение таблиц
Объединение таблиц применяется, когда у вас есть две таблицы (шапки у них скорее всего разные), и одна таблица дополняет другую. Например, в отчете продажи показаны по городам, а у вас просят вывести информацию по областям. Тогда потребуется объединение по горизонтали:
Одна таблица дополняет другую с помощью объединения по общему столбцу
В «обычном» Excel это делается с помощью формулы ВПР или других формул с похожим функционалом. Power Query предлагает нам больше способов объединения. Используя этот инструмент, мы можем не «просто» связать таблицы, но и сделать это по определенным условиям.
Типы объединения данных в Power Query
Power Query предлагает на выбор шесть различных способов соединения таблиц. Если посмотреть теорию про объединение данных, вы наверняка встретите примеры рисунков с кругами – схематичным изображением множеств или таблиц, которые мы хотим объединить.
- Внешнее соединение слева (все из первой таблицы, совпадающие из второй)
- Внешнее соединение справа (все из второй таблицы, совпадающие из первой)
- Полное внешнее (все строки из обеих таблиц)
- Внутреннее (только совпадающие строки)
- Анти-соединение слева (только строки в первой таблице)
- Анти-соединение справа (только строки во второй таблице)
Внешнее соединение справа
Разберем в способы объединения данных на примерах.
Внешнее соединение слева
Left Outer Join
Внешнее соединение слева наиболее часто применяется для объединения таблиц. Это то, что мы делаем в Excel с помощью формулы ВПР – из одной таблицы «перетаскиваем» данные в другую.
Когда вы выбираете «Внешнее соединение слева», к данным из первой таблицы добавляются все значения из второй таблицы, соответствующие столбцу поиска. Если во второй таблице нет искомых значений, вы получите null или «пусто».
Пример: объединим план продаж в штуках с плановыми ценами.
Добавьте таблицы в Power Query: вкладка Данные → Получить данные → Из других источников → Из таблицы / диапазона, или для новых версий Excel: вкладка Данные → Из таблицы / диапазона. Объедините запросы: вкладка Главная → Объединить запросы, выберите столбец слияния «Товар» и тип объединения «Внешнее соединение слева». На некоторые товары нет плановых цен, поэтому после объединения в столбце «цена» для этих товаров будет проставлен null.
Хотя в диалоговом окне таблицы расположены одна под другой (просто так удобнее технически), связь все равно горизонтальная. В диалоговом окне указывается столбец, по которому выполняется объединение.
Внешнее соединение справа
Right Outer Join
Тип соединения «Внешнее соединение справа» используется, если в первую таблицу нужно не только добавить новые столбцы, но и отфильтровать её. Вторая таблица используется как источник данных и управляет содержимым первой таблицы.
Что происходит, когда вы выбираете «Внешнее соединение справа»: из первой таблицы исчезнут все не найденные во второй таблице данные. Из второй таблицы будут добавлены те значения, которых нет в первой. Если посмотреть на рисунок, видно, что Внешнее соединение справа работает так же, как и Внешнее соединение слева, отличается только порядок расположения таблиц.
Пример: в первой таблице — ожидаемые среднемесячные продажи на одного покупателя, во второй – количество потенциальных покупателей. Объединим таблицы, чтобы запланировать будущие продажи.
Объединим таблицы, чтобы запланировать будущие продажи. Общий столбец для поиска — «Направление».
В результате объединения из таблицы «исчезли» данные по направлениям, где нет потенциальных покупателей.
Полное внешнее соединение
Full Outer Join
Этот тип соединения создает таблицу, в которой есть все строки и первой, и второй таблицы. С помощью общего столбца объединяются все строки таблиц.
Пример: в первой таблице приведен объем производства по дням, во второй – объем брака. Создадим общую таблицу.
Для создания общей таблицы используется Полное внешнее соединение. Для объединения используем общий столбец «дата». В результате получится отчет с датами и цифрами из первой и второй таблицы. В ячейках, где данные за аналогичные периоды были только в первой или только во второй таблице, стоит null.
Внутреннее соединение
Inner Join
Внутреннее соединение находит и оставляет только совпадающие строки из обеих таблиц. Если данные есть в одной из таблиц, но нет в другой, то в объединенном запросе они не появятся.
Таблицы объединяются с помощью общего столбца. При этом из первой таблицы исчезнут все не найденные в «общем» столбце второй таблицы строки. Из второй таблицы – исчезнут не найденные в первой.
Пример: есть два списка покупателей, принявших участие в акциях А и Б – по одному для каждой из акций. С помощью Внутреннего соединения получим список покупателей, участвовавших и в той, и в другой акции.
Поиск выполняется по общему столбцу «Покупатель». Результат — список покупателей, участвовавших в обеих акциях.
Анти-соединение слева
Left Anti Join
Если вам требуется исключить из таблицы ненужные строки, можно воспользоваться объединением с Анти-соединением слева. С помощью этого способа из первой таблицы будут исключены все строки, найденные во второй.
Пример: в первой таблице – записи о сделанных покупателям коммерческих предложениях, во второй – данные о продажах. С помощью Анти-соединения слева найдем покупателей, которые получили предложение, но не сделали покупку.
С помощью запроса исключим из первой таблицы найденных во второй покупателей. В результате получится список покупателей, которые не сделали покупки.
Анти-соединение справа
Right Anti Join
Анти-соединение справа работает так же, как и Анти-соединение слева. Разница здесь только в порядке расположения таблиц.
Пример: в первой таблице – отчет о выполненных задачах, во второй – список поставленных задач. Объединив таблицы с помощью Анти-соединения справа, найдем невыполненные задачи.
В результате объединения получим список невыполненных задач.
Кроме объединения таблиц с помощью запросов Power Query, такие операции можно выполнять и с помощью DAX-формул, применяя их в различных сочетаниях: GENERATEALL, NATURALLEFTOUTERJOIN, NATURALINNERJOIN, CROSSJOIN, FILTER+CROSSJOIN, GENERATE, EXCEPT и др.
Microsoft Power Query — полезный инструмент для работы с данными внутри Microsoft Excel. Он поставляется с множеством функций, которые помогают управлять простыми, но мощными наборами данных.
Power Query наиболее полезен при работе с несколькими наборами данных. Он действует как мост между наборами данных и Microsoft Excel.
Чтобы продемонстрировать это, статья поможет вам выполнить типичную задачу, в которой лучше всего проявляется Power Query: объединить два разных набора данных в один.
- Что такое Microsoft Power Query?
- Набор данных
- Загрузите данные в редактор Power Query
- Используйте редактор Power Query
- Добавить второй источник данных
- Присоединяйтесь к паспорту данных
- Загрузить данные в рабочий лист
Что такое Microsoft Power Query?
Microsoft Power Query — это инструмент, включенный в Microsoft Excel для Windows. Он включен только в версии Excel 2016 или новее, поэтому проверьте эти версии, чтобы начать использовать Power Query. Новые пользователи должны убедиться, что они понимают основы Excel, прежде чем начать использовать Power Query.
Power Query позволяет загружать данные из нескольких разных источников, редактировать эти данные, а затем импортировать данные в электронную таблицу Excel. Узнайте больше о том, почему вам следует начать использовать Microsoft Power Query.
Один из типов источников, из которых вы можете получить данные, — это другие листы Excel. Чтобы получить данные, проиллюстрированные для Power Query в этой статье, в примере будут использоваться две отдельные электронные таблицы Excel, содержащие одинаковые наборы данных, а затем их объединить в одну.
Набор данных
Выберите 2 книги Excel, соответственно в примере «Cars.xlsx» и «Trucks.xlsx». Содержание этих таблиц очень простое. Каждый рабочий лист содержит таблицу с описанием определенных носителей, классифицированных по столбцам: «Марка», «Модель», «Цвет» и «Год».
В этом примере также создается пустая книга под названием «Vehicles.xlsx» для выполнения своей работы.
Для простоты в статье используются два набора данных с одинаковой информацией заголовка. Цель здесь — создать новую доску с информацией об автомобилях и грузовиках.
Эти книги были сохранены на компьютере. Теперь займемся Power Query!
Загрузите данные в редактор Power Query
Для начала все, что вам нужно сделать, это открыть книгу, содержащую созданные данные. В данном случае книга — «Транспортные средства.xlsx».
Power Query очень прост в использовании. Вам не нужно открывать книгу, содержащую данные, чтобы извлечь то, что вам нужно. В «Vehicles.xlsx» перейдите на вкладку «Данные», содержащую параметры для книги.
Вы увидите опцию «Получить данные» на панелях инструментов. Этот параметр является входом в Power Query и позволяет выбрать источник данных.
Вы хотите работать с книгой Excel, поэтому выберите вариант «Из файла», а затем «Из книги».
Редактор откроет проводник, и вы сможете перейти к книге в любом месте ПК. Сначала выберите файл Cars.xlsx.
Когда вы закончите выбор файла, загрузится меню Power Query Navigator, чтобы показать вам предварительный просмотр выбранного рабочего листа. Обратите внимание на файл Cars.xlsx, а также на рабочий лист, отображаемый в навигаторе. Нажмите на лист, и рабочий лист загрузится в то же меню, что и на рабочем листе! Щелкните «Преобразовать данные», чтобы открыть данные в редакторе.
Используйте редактор Power Query
В редакторе Power Query имеется множество опций, не беспокойтесь о них прямо сейчас, так как в этой статье вы познакомитесь только с основами. На первый взгляд данные загружены правильно! Похоже на таблицу Excel. Данные организованы в строки и столбцы с заголовками, названными вверху.
Справа от вас находится меню под названием «Параметры запроса», которое содержит окно «Примененные шаги». Шаги здесь — это изменения, внесенные в таблицу. Обратите внимание на этот раздел для дальнейшего использования.
В крайнем левом углу щелкните значок «Запросы», чтобы развернуть меню и отобразить имя таблицы, над которой вы работаете. Power Query может принимать несколько таблиц одновременно и отображать их все на этой панели инструментов.
Чтобы объединить две таблицы, необходимо загрузить обе таблицы в Power Query. Один у вас уже есть, поэтому загрузите другой.
Добавить второй источник данных
Внутри редактора в правом верхнем углу находится кнопка «Новый источник». Эта кнопка позволяет выбрать дополнительный источник данных и добавить его в редактор Power Query.
Выберите «Файл», а затем «Excel», чтобы открыть проводник. Перейдите к Trucks.xlsx, чтобы выбрать файл для импорта.
Как и в первом запросе, появится навигатор, позволяющий выбрать таблицу из электронной таблицы. Выберите электронную таблицу и нажмите ОК. Теперь вы увидите доски для легковых и грузовых автомобилей на панели инструментов «Запросы». Щелчок по одной из двух таблиц отобразит данные в этой электронной таблице.
Присоединяйтесь к листу данных
После того, как все шаги подготовлены, объединить таблицы данных на самом деле довольно просто. Щелкните панель «Машины» и на панели инструментов выберите «Добавить запросы» в разделе «Объединить».
Появится окно «Добавить», в котором будет указана таблица, которую вы хотите объединить с выбранной таблицей. Помните, что вы находитесь на доске «Машины» и хотите связать с ней доску «Грузовики». Щелкните таблицу «Грузовики» внутри «Добавляемой таблицы», чтобы объединить ее, и нажмите «ОК».
Вот результат:
Обратите внимание, что все данные об автомобилях и грузовиках будут помещены в одну таблицу. Наборы данных были объединены! Также обратите внимание, что Power Query создал новый «шаг» в вашем списке под названием «Добавленный запрос».
Загрузить данные в рабочий лист
Последнее, что нужно сделать, — это взять данные, хранящиеся в редакторе Power Query, и загрузить их в свою электронную таблицу.
В верхнем левом углу нажмите «Закрыть и загрузить», чтобы поместить вновь созданную таблицу в «Транспортные средства» в формате таблицы. При нажатии происходит следующее:
- Редактор сохранит шаги запроса и выхода.
- Книга появится с данными, загруженными в виде таблицы Excel.
- Excel также откроет меню «Запросы к книге» в правой части листа.
Вы готовы работать с новыми таблицами, не открывая их!
Теперь вы узнали, как добавлять данные с помощью Power Query. У вас есть новый мощный инструмент для упрощения данных. Теперь, когда данные загружены в Excel для использования, вы можете работать с ними как с любой таблицей. Вы можете создавать диаграммы из таблиц Excel или массово вставлять изображения в ячейки Excel.
Надеюсь, у вас все получится.