Создание, загрузка и изменение запроса в Excel (Power Query)
Excel для Microsoft 365 Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Еще…Меньше
Power Query предлагает несколько способов создания и загрузки power querys в книгу. Вы также можете настроить параметры загрузки запроса по умолчанию в окне Параметры запроса.
Совет Чтобы упросить, сформированы ли данные на этом плане с помощью Power Query, выберите ячейку с данными, а если появится вкладка Лента контекстного запроса, данные загружаются из Power Query.
Знать, в какой среде вы сейчас? Power Query хорошо интегрирован с пользовательским интерфейсом Excel, особенно при импорте данных, работе с подключениями и редактировании таблиц, таблиц с Excel и именовых диапазонов. Чтобы избежать путаницы, важно в любой момент времени знать, в какой среде вы находитесь, в какой Excel или Power Query.
Знакомые Excel, лента и сетка |
Лента редактора Power Query и предварительный просмотр данных |
Например, работа с данными на Excel значительно отличается от Power Query. Кроме того, подключенные данные, которые вы видите на Excel, могут не работать с Power Query для их обработки. Это происходит только при загрузке данных на таблицу или в модель данных из Power Query.
Переименование я вкладок на таблицах Ямы лучше переименовывать по своему смыслу, особенно если их много. Особенно важно пояснить разницу между данными и данными, загруженными из редактора Power Query. Даже если у вас всего два листа: с таблицей Excel «Лист1»и запросом, созданным путем импорта таблицы Excel Таблица1,ее легко запутать. Всегда имеет смысл изменить названия ярлыков по умолчанию на более понятное. Например, переименуйте Лист1 в Таблицу данных и Таблицу1 в Таблицу запросов. Теперь понятно, какая вкладка с данными, а какая вкладка с запросом.
Вы можете создать запрос из импортируемых данных или пустой запрос.
Создание запроса из импортируемых данных
Это самый распространенный способ создания запроса.
-
Импорт некоторых данных. Дополнительные сведения см. в том, как импортировать данные из внешних источников.
-
Выберем ячейку в данных и выберите запрос> изменить.
Создание пустого запроса
Вы можете начать с нуля. Это можно сделать двумя способами.
-
Выберите Данные> Получить данные >из других источников > пустой запрос.
-
Выберите Данные> получить данные >запуск редактора Power Query.
На этом этапе вы можете вручную добавлять шаги и формулы, если хорошо знаете язык формул Power Query M.
Кроме того, можно выбрать команду На главная в группе Новый запрос. Выполните одно из указанных ниже действий.
-
Выберите Новый источник, чтобы добавить источник данных. Эта команда выглядит так же, как> «Получить данные» на Excel ленте.
-
Выберите Последние источники, чтобы выбрать источник данных, с помощью который вы работали. Эта команда выглядит так же, как> последние источники на Excel ленте.
-
Чтобы ввести данные вручную, выберите Ввести данные. Вы можете выбрать эту команду, чтобы попробовать редактор Power Query независимо от внешнего источника данных.
Предположим, что запрос действителен и не имеет ошибок, его можно загрузить обратно на таблицу или в модель данных.
Загрузка запроса из редактора Power Query
В редакторе Power Query сделайте следующее:
-
Чтобы загрузить на таблицу, выберите Главная> Закрыть & Загрузить > Закрыть & Загрузить.
-
Чтобы загрузить данные в модель данных, выберите Главная> Закрыть & Загрузить > Закрыть & Загрузка.
В диалоговом окне Импорт данных выберите добавить эти данные в модельданных.
Совет Иногда команда «Загрузить в» неатривна или отключена. Это может произойти при первом создании запроса в книге. В этом случае нажмите кнопку Закрыть & Загрузить, на новом > запросы данных & Connections > Запросы, щелкните запрос правой кнопкой мыши и выберите загрузить в . Кроме того, на ленте редактора Power Query выберите запрос> Загрузить в.
Загрузка запроса из области «Запросы и подключения»
В Excel может потребоваться загрузить запрос на другой таблицу или в модель данных.
-
В Excel выберите Запросы> запросы & Connections, а затем выберите вкладку Запросы.
-
В списке запросов найдите запрос, щелкните его правой кнопкой мыши и выберите загрузить в. Появится диалоговое окно Импорт данных.
-
Выберите, как вы хотите импортировать данные, а затем выберите ОК. Чтобы получить дополнительные сведения об использовании этого диалогового окна, выберите знак вопроса (?).
Существует несколько способов изменить запрос, загруженный на таблицу.
Изменение запроса на Excel данных
-
Чтобы изменить запрос, найдите ранее загруженную из редактора Power Query, выйдите ячейку в данных и выберите запрос > Изменить.
Изменение запроса в области «Запросы & подключения»
Возможно, вы & области Запросы и подключения удобнее использовать, если в одной книге много запросов и вы хотите быстро найти его.
-
В Excel выберите Запросы> запросы & Connections, а затем выберите вкладку Запросы.
-
В списке запросов найдите запрос, щелкните его правой кнопкой мыши и выберите изменить.
Изменение запроса в диалоговом окне «Свойства запроса»
-
В Excel выберите Data> Data & Connections > Запросы, щелкните запрос правой кнопкой мыши и выберите Свойства ,выберите вкладку Определение в диалоговом окне Свойства и нажмите кнопку Изменить запрос.
Совет Если вы работаете с запросом на > данных, в диалоговом окнеСвойства выберите вкладку Определение, а затем — Изменить запрос.
Модель данных обычно содержит несколько таблиц, расположенных в связи. Запрос загружается в модель данных с помощью команды Загрузить, чтобы отобразить диалоговое окно Импорт данных, а затем в поле Добавить эти данные в режим данныхl. Дополнительные сведения о моделях данных см. в дополнительных сведениях о том, какие источники данных используются в модели данных книги,Создание модели данных в Excelи Создание таблиц с помощью нескольких таблиц.
-
Чтобы открыть модель данных, выберите Power Pivot > Управление.
-
В нижней части окна Power Pivot выберите вкладку нужной таблицы.
Подтвердим, что отображается правильная таблица. Модель данных может иметь много таблиц.
-
Обратите внимание на имя таблицы.
-
Чтобы закрыть окно Power Pivot, выберите файл> Закрыть. Чтобы освободить память, может потребоваться несколько секунд.
-
Выберите > подключения & свойства >Запросы, щелкните запрос правой кнопкой мыши и выберите изменить.
-
Завершив внесение изменений в редакторе Power Query, выберите файл > Закрыть & загрузить.
Результат
Запрос на этом и в таблице в модели данных обновляются.
Если вы заметили, что загрузка запроса в модель данных занимает намного больше времени, чем загрузка на лист, проверьте действия Power Query, чтобы узнать, фильтруется ли текстовый столбец или структурированный столбец списка с помощью оператора Contains. Это действие приводит Excel повторно прогонять весь набор данных для каждой строки. Более того, Excel не могут эффективно использовать многопрочитанные выполнения. В качестве обходного решения попробуйте использовать другой оператор, например Равно или Начинает с.
Корпорация Майкрософт знает об этой проблеме и находится в стадии исследования.
Вы можете загрузить Power Query:
-
На один из них. В редакторе Power Query выберите Home> Close & Load > Close & Load.
-
В модель данных. В редакторе Power Query выберите Home> Close & Load > Close & Load To.
По умолчанию Power Query загружает запросы на новый таблицу при загрузке одного запроса и одновременно загружает несколько запросов в модель данных. Вы можете изменить поведение по умолчанию для всех книг или только для текущей книги. При настройке этих параметров Power Query не меняет результаты запроса на месте или в данных модели данных и примечаниях.
Кроме того, динамически переопределять стандартные параметры запроса можно в диалоговом окне Импорт, которое отображается после выбора параметра & Загрузитьв.
Глобальные параметры, которые применяются во всех книгах
-
В редакторе Power Query выберите Файл > параметры и параметры >параметры запроса.
-
В диалоговом окне Параметры запроса в левой части в разделе GLOBAL выберите Загрузка данных.
-
В разделе Загрузка Параметры запроса по умолчанию сделайте следующее:
-
Выберите Использовать стандартные параметры загрузки.
-
Выберите Указать настраиваемые параметры загрузкипо умолчанию, а затем выберите или отобирать параметр Загрузить на таблицу или Загрузить в модель данных.
-
Совет В нижней части диалогового окна можно выбрать восстановить параметры по умолчанию, чтобы вернуться к настройкам по умолчанию.
Параметры книги, которые применяются только к текущей книге
-
В диалоговом окне Параметры запроса в левой части в разделе ТЕКУЩАЯ КНИГА выберите Загрузка данных.
-
Выполните одно или несколько из указанных ниже действий.
-
В области Обнаружение типоввыберите или сберем для обнаружения типов столбцов и их заглавных колонок для неструктурированных источников.
По умолчанию они обнаруживаются. Если вы предпочитаете формировать данные самостоятельно, отоставьте этот параметр.
-
В области Связивыберите или отоберем создать связи между таблицами при первом добавлении в модель данных.
По умолчанию перед загрузкой в модель данных можно найти существующие связи между таблицами, например внешние ключи в реляционной базе данных, и импортировать их вместе с данными. Если вы предпочитаете делать это самостоятельно, сделайте это самостоятельно.
-
В области Связивыберите или отоберете update relationships when refreshing queries loaded to the Data Model (Связи) при обновлении запросов, загруженных в модель данных.
По умолчанию отношения не обновляются. При обновлении запросов, уже загруженных в модель данных, Power Query находит существующие связи между таблицами, например внешние ключи, в реляционной базе данных и обновляет их. Это может привести к удалению связей, созданных вручную после импорта данных, или к новым связям. Тем не менее, если вы хотите сделать это, выберите этот параметр.
-
В области Фоновыеданные выберите или отпустите разрешение предварительного просмотра данных для скачивания в фоновом режиме.
По умолчанию предварительный просмотр данных загружается в фоновом режиме. Если вы хотите сразу же видеть все данные, отобираем этот параметр.
-
См. также
Справка по Power Query для Excel
Управление запросами в Excel
Нужна дополнительная помощь?
Постановка задачи
Давайте разберем красивое решение для одной из весьма стандартных ситуаций, с которой рано или поздно сталкивается большинство пользователей Excel: нужно быстро и автоматически собрать данные из большого количества файлов в одну итоговую таблицу.
Предположим, что у нас есть вот такая папка, в которой содержится несколько файлов с данными из филиалов-городов:
Количество файлов роли не играет и может меняться в будущем. В каждом файле есть лист с именем Продажи, где расположена таблица с данными:
Количество строк (заказов) в таблицах, само-собой, разное, но набор столбцов везде стандартный.
Задача: собрать данные из всех файлов в одну книгу с последующим автоматическим обновлением при добавлении-удалении файлов-городов или строк в таблицах. По итоговой консолидированной таблице затем можно будет строить любые отчеты, сводные таблицы, фильтровать-сортировать данные и т.д. Главное — суметь собрать.
Подбираем оружие
Для решения нам потребуется последняя версия Excel 2016 (в нее нужный функционал уже встроен по умолчанию) или предыдущие версии Excel 2010-2013 с установленной бесплатной надстройкой Power Query от Microsoft (скачать ее можно здесь). Power Query — это супергибкий и супермощный инструмент для загрузки в Excel данных из внешнего мира с последующей их зачисткой и обработкой. Power Query поддерживает практически все существующие источники данных — от текстовых файлов до SQL и даже Facebook
Если у вас нет Excel 2013 или 2016, то дальше можно не читать (шучу). В более древних версиях Excel подобную задачу можно реализовать только программированием макроса на Visual Basic (что весьма непросто для начинающих) или монотонным ручным копированием (что долго и порождает ошибки).
Шаг 1. Импортируем один файл как образец
Для начала давайте импортируем данные из одной книги в качестве примера, чтобы Excel «подхватил идею». Для этого создайте новую пустую книгу и…
- если у вас Excel 2016, то откройте вкладку Данные и выберите Создать запрос — Из файла — Из книги (Data — New Query- From file — From Excel)
- если у вас Excel 2010-2013 с установленной надстройкой Power Query, то откройте вкладку Power Query и выберите на ней Из файла — Из книги (From file — From Excel)
Затем в открывшемся окне переходим в нашу папку с отчетами и выбираем любой из файлов-городов (не играет роли какой именно, т.к. они все типовые). Через пару секунд должно появиться окно Навигатор, где нужно в левой части выбрать требуемый нам лист (Продажи), а в правой отобразится его содержимое:
Если нажать в правом нижнем углу этого окна кнопку Загрузить (Load), то таблица будет сразу импортирована на лист в исходном виде. Для одиночного файла — это хорошо, но нам нужно загрузить много таких файлов, поэтому мы пойдем немного другим путем и жмем кнопку Правка (Edit). После этого должен в отдельном окне отобразиться редактор запросов Power Query с нашими данными из книги:
Это очень мощный инструмент, позволяющий «допилить» таблицу под нужный нам вид. Даже поверхностное описание всех его функций заняло бы под сотню страниц, но, если совсем кратко, то с помощью этого окна можно:
- отфильтровывать ненужные данные, пустые строки, строки с ошибками
- сортировать данные по одному или нескольким столбцам
- избавляться от повторов
- делить слипшийся текст по столбцам (по разделителям, количеству символов и т.д.)
- приводить текст в порядок (удалять лишние пробелы, исправлять регистр и т.д.)
- всячески преобразовывать типы данных (превращать числа как текст в нормальные числа и наоборот)
- транспонировать (поворачивать) таблицы и разворачивать двумерные кросс-таблицы в плоские
- добавлять к таблице дополнительные столбцы и использовать в них формулы и функции на встроенном в Power Query языке М.
- …
Для примера, давайте добавим к нашей таблице столбец с текстовым названием месяца, чтобы потом проще было строить отчеты сводных таблиц. Для этого щелкните правой кнопкой мыши по заголовку столбца Дата и выберите команду Дублировать столбец (Duplicate Column), а затем щелкните правой кнопкой мыши по заголовку появившегося столбца-дубликата и выберите команды Преобразование — Месяц — Название месяца:
Должен образоваться новый столбец с текстовыми названиями месяца для каждой строки. Дважды щелкнув по заголовку столбца, его можно переименовать из Копия Дата в более удобное Месяц, например.
Если в каких-то столбцах программа не совсем корректно распознала тип данных, то ей можно помочь, щелкнув по значку формата в левой части каждого столбца:
Исключить строки с ошибками или пустые строки, а также ненужных менеджеров или заказчиков можно с помощью простого фильтра:
Причем все выполненные преобразования фиксируются в правой панели, где их всегда можно откатить (крестик) или изменить их параметры (шестеренка):
Легко и изящно, не правда ли?
Шаг 2. Преобразуем наш запрос в функцию
Чтобы впоследствии повторить все сделанные преобразования данных для каждой импортируемой книги, нужно преобразовать наш созданный запрос в функцию, которая затем будет применяться, по очереди, ко всем нашим файлам. Сделать это, на самом деле, очень просто.
В редакторе запросов перейдите на вкладку Просмотр и нажмите кнопку Расширенный редактор (View — Advanced Editor). Должно открыться окно, где все наши предыдущие действия будут записаны в виде кода на языке М. Обратите внимание, что в коде жестко прописан путь к файлу, который мы импортировали для примера:
Теперь аккуратно вносим пару правок:
Смысл их прост: первая строка (filepath)=> превращает нашу процедуру в функцию с аргументом filepath, а ниже мы меняем фиксированный путь на значение этой переменной.
Все. Жмем на Готово и должны увидеть вот это:
Не пугайтесь, что пропали данные — на самом деле все ОК, все так и должно выглядеть Мы успешно создали нашу пользовательскую функцию, где запомнился весь алгоритм импорта и обработки данных без привязки к конкретному файлу. Осталось дать ей более понятное имя (например getData) на панели справа в поле Имя и можно жать Главная — Закрыть и загрузить (Home — Close and Load). Обратите внимание, что в коде жестко прописан путь к файлу, который мы импортировали для примера.. Вы вернетесь в основное окно Microsoft Excel, но справа должна появиться панель с созданным подключением к нашей функции:
Шаг 3. Собираем все файлы
Все самое сложное — позади, осталась приятная и легкая часть. Идем на вкладку Данные — Создать запрос — Из файла — Из папки (Data — New Query — From file — From folder) или, если у вас Excel 2010-2013, аналогично на вкладку Power Query. В появившемся окне указываем папку, где лежат все наши исходные файлы-города и жмем ОК. Следующим шагом должно открыться окно, где будут перечислены все найденные в этой папке (и ее подпапках) файлы Excel и детализация по каждому из них:
Жмем Изменить (Edit) и опять попадаем в знакомое окно редактора запросов.
Теперь нужно добавить к нашей таблице еще один столбец с нашей созданной функцией, которая «вытянет» данные из каждого файла. Для этого идем на вкладку Добавить столбец — Пользовательский столбец (Add Column — Add Custom Column) и в появившемся окне вводим нашу функцию getData, указав для ее в качестве аргумента полный путь к каждому файлу:
После нажатия на ОК созданный столбец должен добавиться к нашей таблице справа.
Теперь удалим все ненужные столбцы (как в Excel, с помощью правой кнопки мыши — Удалить), оставив только добавленный столбец и столбец с именем файла, т.к. это имя (а точнее — город) будет полезно иметь в итоговых данных для каждой строки.
А теперь «вау-момент» — щелкнем мышью по значку со своенным стрелками в правом верхнем углу добавленного столбца с нашей функцией:
… снимаем флажок Использовать исходное имя столбца как префикс (Use original column name as prefix)и жмем ОК. И наша функция подгрузит и обработает данные из каждого файла, следуя записанному алгоритму и собрав все в общую таблицу:
Для полной красоты можно еще убрать расширения .xlsx из первого столбца с именами файлов — стандартной заменой на «ничего» (правой кнопкой мыши по заголовку столбца — Заменить) и переименовать этот столбец в Город. А также подправить формат данных в столбце с датой.
Все! Жмем на Главной — Закрыть и загрузить (Home — Close & Load). Все собранные запросом данные по всем городам будут выгружены на текущий лист Excel в формате «умной таблицы»:
Созданное подключение и нашу функцию сборки не нужно никак отдельно сохранять — они сохраняются вместе с текущим файлом обычным образом.
В будущем, при любых изменениях в папке (добавлении-удалении городов) или в файлах (изменение количества строк) достаточно будет щелкнуть правой кнопкой мыши прямо по таблице или по запросу в правой панели и выбрать команду Обновить (Refresh) — Power Query «пересоберет» все данные заново за несколько секунд.
P.S.
Поправка. После январских обновлений 2017 года Power Query научился собирать Excel’евские книги сам, т.е. не нужно больше делать отдельную функцию — это происходит автоматически. Таким образом второй шаг из этой статьи уже не нужен и весь процесс становится заметно проще:
- Выбрать Создать запрос — Из файла — Из папки — Выбрать папку — ОК
- После появления списка файлов нажать Изменить
- В окне редактора запросов развернуть двойной стрелкой столбец Binary и выбрать имя листа, который нужно взять из каждого файла
И все! Песня!
Ссылки по теме
- Редизайн кросс-таблицы в плоскую, подходящую для построения сводных таблиц
- Построение анимированной пузырьковой диаграммы в Power View
- Макрос для сборки листов из разных файлов Excel в один
Power Query — это инструмент для продвинутого бизнес-анализа, предназначенный для подключения к источникам данных и их преобразования.
Несмотря на то, что данные в Excel можно загружать с помощью инструментов Power Pivot, возможностей для преобразования и доступных источников данных в Power Query намного больше и работа с ними проще. Итак, теперь для обработки таблиц и подключения к данным больше не нужны сложные формулы и макросы.
Power Query в меню Excel
В зависимости от того, какая у вас версия Excel, вид надстройки Power Query может выглядеть по-разному. В Excel 2010 и 2013 надстройка появляется в виде отдельной вкладки «Power Query» (если у вас такой вкладки нет, прочитайте, как ее установить).
В Excel после 2016 года Power Query уже встроен по умолчанию и находится в меню Данные → раздел Получить и преобразовать данные (в некоторых версиях Excel этот раздел называется Скачать & преобразовать).
Работа с данными в Power Query
Power Query умеет:
- напрямую подключаться к данным в различных источниках;
- очищать данные и выполнять преобразования;
- подготовленные данные выгружать на лист, в сводную таблицу или добавлять в модель данных Excel.
Таким образом, Power Query – это полноценный ETL-инструмент (Extract, Transform, Load).
Подключение к данным в Power Query
В Power Query можно подключать данные из самых разных источников: таблицы в самом файле и других Excel-файлах, текстовые/csv файлы, папки, базы данных, источники в интернете, файлы xml и json, pdf-файлы, данные из канала OData и так далее. А также загрузить данные из Power BI и написать запрос с нуля – Пустой запрос.
Чтобы посмотреть, какие именно источники данных доступны в Excel, перейдите на вкладку Данные → Получить данные (или Создать запрос, если у вас не новая версия Excel).
Для примера добавим в Power Query данные из таблицы.
- Выделите любую таблицу на листе Excel и перейдите в меню:
— в Excel 2010 и 2013: вкладка Power Query → Из таблицы (или С листа).
— для Excel после 2016: меню Данные → Из таблицы (Из таблицы/диапазона).
В открывшемся окне поставьте галочку «Таблица с заголовками».
Таблица с данными при этом превратится в «умную» smart-таблицу.
- Откроется окно редактора запросов, в котором будет наша таблица. Нажимаем кнопку в меню Главная → Закрыть и загрузить. Готово!
Чтобы открыть список запросов, нажмите в меню Данные → Запросы и подключения. В открывшейся вкладке «Запросы и подключения» отобразится список всех запросов, созданных в файле.
Редактор запросов Power Query
Разберем подробнее интерфейс редактора запросов Power Query.
Если окно редактора у вас закрыто, откройте его в меню Данные → Получить данные → Запустить редактор запросов. Или щелкните 2 раза мышкой по названию запроса на вкладке Запросы и подключения.
Итак, в редакторе Power Query есть:
- Лента редактора запросов для вкладок меню: Главная, Преобразование, Добавить столбец, Просмотр.
- Перечень созданных запросов, который можно свернуть / развернуть.
- Строка формул.
- Название самого запроса.
- Примененные шаги запроса: записанные шаги получения или преобразования данных. Их можно редактировать, выбирая в списке, изменять последовательность шагов, добавлять новые или удалять.
- Область предварительного просмотра, в которой выводится результат преобразования данных для каждого шага.
- Меню для данных, которое открывается при нажатии правой кнопкой мышки.
- При выборе правой кнопкой мыши названия шага появляется его контекстное меню.
Преобразование данных
Посмотрим на простом примере, как преобразовать данные в Power Query.
Допустим, у нас есть таблица с выручкой и расходами по городам за несколько лет. В таблице эти показатели разделены на две группы. Столбец с городами тоже имеет группировки (смотрите рисунок).
Если вы знакомы со сводными таблицами, то знаете, что построить сводную на основе таких данных не получится. Привести их в «нужный вид» можно в Power Query буквально за несколько щелчков мышкой:
- выделите таблицу (можно выделить таблицу целиком или одну из ячеек);
- выберите в меню Данные → Из таблицы (Из таблицы/диапазона);
- в появившемся окне поставьте галочку рядом с «Таблица с заголовками» → ОК;
- в открывшемся редакторе запросов выделите столбцы «показатель» и «город», нажав мышкой на названия столбцов с зажатым Ctrl;
- в меню нажмите Преобразование → Заполнить → Вниз.
- Готово! Пустые строки заполнены значениями из ячеек сверху.
При создании запроса Power Query сам автоматически записывает его шаги. Их можно увидеть в области справа Параметры запроса → Примененные шаги.
Шаги запроса можно редактировать, выбирая мышкой (таблица в области предварительного просмотра при этом тоже изменится). Ненужные шаги удаляются при нажатии на «крестик». Можно добавлять новые шаги в середину запроса или менять их местами, перемещая мышкой.
Обработка данных в Power Query выполняется последовательно, шаг за шагом, и каждое последующее действие использует результаты предыдущего. Поэтому при добавлении новых шагов или изменении их последовательности обязательно проверьте, все ли в порядке со следующими операциями. Проверить, все ли в порядке, можно, нажав на самый нижний шаг.
Кроме простых операций с данными, Power Query умеет выполнять и другие действия: сортировать, фильтровать, заменять, группировать, заполнять пустые значения, удалять дубликаты, работать с текстом и числами, выполнять простые вычисления, транспонировать таблицы и разворачивать их столбцы, объединять данные и многое-многое другое.
Строка формул и расширенный редактор
Код запроса, который вы создаете в Power Query, автоматически записывается на языке M. Это не значит, что обязательно потребуется писать код – большинство операций по преобразованию данных можно выполнить только с помощью кнопок меню.
Формулы Power Query выводятся в строке формул. По умолчанию эта строка скрыта, ее включают на вкладке Просмотр → Строка формул.
Чтобы посмотреть все формулы, здесь же на вкладке Просмотр нажмите на кнопку Расширенный редактор. В открывшемся окне появится полный текст запроса.
Типы данных Power Query
Определение типов данных – важная часть каждого запроса Power Query. Обычно типы данных задают в конце запроса после всех преобразований:
- в меню Главная → Тип данных или Преобразование → Определить тип данных;
- нажать мышкой по значку типа данных в названии столбца;
- определить тип даты на вкладке Преобразование → Дата → Выполнить анализ.
Перед сохранением запроса проверьте, все ли типы данных заданы правильно. Это сэкономит время на поиск ошибок. А вот шаг «Измененный тип», который автоматически проставляется в середине запроса, лучше удалить.
Импорт данных из Power Query
Итак, данные преобразованы. Что делать с ними дальше? В Power Query доступно несколько вариантов импорта данных.
Способы импорта можно задать при сохранении запроса Главная → Закрыть и загрузить в…
… А если запрос уже сохранен – в списке на вкладке Запросы и подключения. Щелкните по названию запроса правой кнопкой мышки и выберите в меню Загрузить в
Excel предлагает пользователям на выбор несколько вариантов импорта данных (вид окна импорта может отличаться в зависимости от версии Excel):
- Выгрузка на лист: выберите способ представления данных → Таблица, поместить данные на лист. На листе будет создана «умная» smart-таблица с данными из Power Query.
- Сводная таблица или сводная диаграмма: способ представления → Отчет сводной таблицы или Сводная диаграмма. Данные будут импортированы в виде сводной таблицы.
- Только подключение: выберите Только создать подключение. Запрос будет сохранен.
- Добавить данные в модель данных: при нажатии галочки «Добавить эти данные в модель данных» результаты выполнения запроса будут добавлены в модель Power Pivot.
@DhritimanL
Unfortunately, PowerQuery doesn’t support output of one query to multiple sheets.
If your version of Excel supports Dynamic Arrays and the FILTER function, you can use this code:
Option Explicit
Public Sub SplitTableToSheets()
Dim full_data_listobject As ListObject
Dim selected_range As Range
Dim selected_data As Variant
Dim selected_data_header As String
Dim items_sheet As Worksheet
Dim items_range As Range
Dim item As String
Dim i As Integer
Dim new_item_sheet As Worksheet
DeleteSheetWithoutWarning "items"
Set full_data_listobject = ThisWorkbook.Worksheets("full data").ListObjects(1)
' get the range currently selected
Set selected_range = Selection
selected_data_header = Selection.Offset(-1, 0).Cells(1, 1)
Set items_sheet = ThisWorkbook.Worksheets.Add
items_sheet.Name = "items"
selected_range.Copy
items_sheet.Range("A1").PasteSpecial xlValues
Set items_range = items_sheet.Range("A1").CurrentRegion
items_range.RemoveDuplicates 1, xlNo
'loop through each item and create a new sheet with the filtered data
For i = 1 To items_range.Rows.Count
If items_range.Cells(i, 1) <> "" Then
item = items_range.Cells(i, 1)
DeleteSheetWithoutWarning item
Set new_item_sheet = ThisWorkbook.Worksheets.Add
With new_item_sheet
.Name = item
.Range("A1").Formula2 = "=" & full_data_listobject.Name & "[#Headers]"
.Range("A2").Formula2 = "=FILTER(" & full_data_listobject.Name & _
"," & full_data_listobject.Name & "[" & selected_data_header & "] = """ & item & """)"
''optionally uncomment these two lines to paste the results as values in the destination sheet
'.Range("A1").CurrentRegion.Copy
'.Range("A1").PasteSpecial xlPasteValues
End With
Else
Exit For
End If
Next i
End Sub
Private Sub DeleteSheetWithoutWarning(sheet_name As String)
Application.DisplayAlerts = False
On Error Resume Next
ThisWorkbook.Worksheets(sheet_name).Delete
On Error GoTo 0
Application.DisplayAlerts = True
End Sub
Select a column in your data that contains the items you want to split by, then run the SplitTableToSheets sub-procedure.
The benefit of this is that it will keep the sub-sheets up to date when the data on the main sheet refreshes.
You can test it with my dataset using the attached file.
If this doesn’t work for you because you don’t have access to the FILTER function, let me know. There are other ways to do it.
На чтение 17 мин. Просмотров 64.2k.
Есть одна вещь, которая волнует всех — как сэкономить больше времени и работать с умом.
Что ж, я уже давал много приемов и трюков Excel, которые значительно облегчат работу. Но сегодня речь пойдет о POWER QUERY. Да-да, вы все правильно поняли.
POWER QUERY — это то, что может изменить вашу жизнь. Сегодня в этой статье я поделюсь с вами некоторыми удивительными приемами Power Query, которые вы можете начать использовать прямо сейчас.
Эти советы не только помогут вам сэкономить время, но и вдохновят вас использовать POWER QUERY для управления данными. По крайней мере, я на это надеюсь.
Прежде чем мы перейдем к приемам, нужно прояснить пару моментов.
Содержание
- Почему я должен использовать Power Query?
- Как установить Power Query — Шаги
- Лучшие 25 приемов Power Query для экономии времени в повседневной работе
- Заключение
Почему я должен использовать Power Query?
Делюсь с вами некоторыми серьезными причинами, так как хочу, чтобы вы в дальнейшем изучали Power Query.
1. Самый простой способ преобразовать ваши данные
Одной из основных причин использования Power Query — легкость преобразования данных. Обычно вы используете формулы и сводные таблицы, но с Power Query все основные задачи формирования данных могут быть выполнены в кратчайшие сроки.
2. Power Query в реальном времени
Это вторая важная причина, по которой Power Query выполняется в реальном времени, как разовая настройка.
Напишите запрос один раз, и вы можете обновлять его каждый раз, когда происходит изменение данных, также вы можете определить время автоматического обновления (Совет № 26).
3. Нужно просто несколько кликов
Как я уже сказал, обычно вы используете формулы и сводные таблицы для преобразования данных, но с POWER QUERY вы можете многое сделать, просто щелкнув мышью.
Нет необходимости писать формулы или коды.
Как установить Power Query — Шаги
Прежде чем вы начнете использовать эти приемы, в вашем Excel должен быть установлен Power Query.
И если вы один из тех пользователей Excel, у которых нет надстройки с Power Query, используйте эти шаги для ее установки.
Для Excel 2016 или Office 365:
Если вы используете версию Excel 365 или Excel 2016, она уже находится на вкладке «Данные» — «Скачать & преобразовать».
Для версий 2013 и 2010:
Прежде всего, загрузите надстройку отсюда (официальный сайт Microsoft).Как только вы загрузите файл, откройте его и следуйте инструкциям. После этого автоматически откроется вкладка «Power Query» на ленте Excel.
Если вкладка «POWER QUERY» не появляется, вам не о чем беспокоиться.
Вы можете добавить ее, используя опцию Надстройки COM.
- Перейдите на вкладку «Файл» ➜ «Параметры» ➜ «Надстройки».
- В опциях «Надстройки» выберите «Надстройки COM» и нажмите Перейти.
- После этого отметьте галочкой «Microsoft Power Query for Excel».
- В конце нажмите ОК.
Все! Теперь у вас есть новая вкладка на ленте с названием «Power Query».
Откройте Power Query и загрузите в него данные
У вас есть разные способы добавить данные в редактор Power Query. Что ж, если у вас есть данные на рабочем листе, вы можете вставить их оттуда.
- Перейдите на вкладку «Данные» ➜ «Скачать & преобразовать» ➜ Из таблицы.
- Нажмите OK, чтобы преобразовать этот диапазон в таблицу Excel.
- И сразу после этого вы получите эту таблицу в редакторе Power Query, как показано ниже.
Лучшие 25 приемов Power Query для экономии времени в повседневной работе
Теперь пришло время изучить все эти советы по Power Query. Так что давайте начнем.
1. Заменить значения
У нас есть список с некоторыми значениями, и нам нужно заменить определенное значение или некоторые значения чем-то другим.
С помощью Power Query мы можем создать запрос и заменить эти конкретные значения очень быстро. В приведенном ниже списке я хочу заменить имя «Алена» на «Алёна».
Давайте сделаем:
- Прежде всего, загрузите список в редактор Power Query.
- После этого перейдите на вкладку «Преобразование» и нажмите «Замена значений».
- Теперь в поле «Значение для поиска» введите «Алена», а в поле «Заменить на» введите «Алёна» и после этого нажмите ОК.
- После того, как вы нажмете OK, все значения будут заменены новыми. Теперь можно нажать «Закрыть и загрузить», чтобы загрузить данные в таблицу.
А вот и лучшая часть: Вы только что создали запрос в режиме реального времени. При повторном обновлении запроса он заменит все вновь введенные значения.
2. Сортировка — по возрастанию и по убыванию
Как и при обычной сортировке, вы можете сортировать данные, используя Power Query. Я использую тот же список имен, который мы использовали выше. Вот, что нужно сделать.
- Прежде всего, загрузите данные в редактор
- В редакторе Power Query у вас есть две кнопки сортировки (по возрастанию и по убыванию).
- Нажмите на любую из этих кнопок, чтобы отсортировать.
- В конце нажмите «Закрыть и загрузить», чтобы загрузить данные в таблицу.
Вы, наверное, удивлены: «Зачем мне использовать Power Query, если я могу использовать обычную сортировку на листе?»
Как я уже писал, Power Query — работает в реальном времени. Вы можете создать запрос автообновления (Совет № 26), который будет обновляться через определенное время и автоматически сортировать ваши данные.
3. Удалить столбцы
Очень часто бывает, что вы получаете откуда-то данные, и вам нужно удалить некоторые столбцы из них. Дело в том, что вы должны удалять эти столбцы каждый раз, когда добавляете новые данные.
Но с Power Query вы можете создать запрос.
Вот шаги:
- Прежде всего, откройте данные в редакторе
- После этого выберите столбец или несколько столбцов
- Теперь щелкните правой кнопкой мыши и выберите «Удалить».
- В конце нажмите «Закрыть и загрузить», чтобы загрузить данные.
Совет. Также имеется опция «Удалить другие столбцы», в которой можно удалить все невыбранные столбцы.
4. Разделить столбец
Точно так же как опция как «Текст по столбцам» есть в запросе: «Разделить столбец». Сейчас я расскажу, как это работает.
В приведенном ниже списке у вас есть имя и фамилия с дефисом между ними.
Теперь вам нужно разделить их на две колонки. Используйте эти шаги:
- Прежде всего, откройте список в редакторе
- После этого выберите столбец и перейдите на вкладку «Преобразование» ➜ «Разделить столбец» ➜ «по разделителю».
- Выберите «Пользовательский» из выпадающего списка и введите «-» в него.
- Теперь у вас есть три варианта, как разбить столбец.
- Самый левый разделитель
- Самый правый разделитель
- По каждому вхождению разделителя
Поскольку у нас есть только один разделитель в ячейке, все три будут работать одинаково, но если у вас более одного разделителя, вы можете выбрать нужный.
- В конце нажмите OK и нажмите «Закрыть и загрузить», чтобы загрузить данные.
5. Переименовать столбец
Вы можете просто переименовать столбец, щелкнув правой кнопкой мыши, а затем нажмите «Переименовать».
Совет: допустим, у вас есть запрос на переименование столбца, а кто-то другой переименовал его по ошибке. Вы можете восстановить это имя одним щелчком мыши.
6. Дубликат столбца
В Power Query есть простой способ создать дубликат столбца.
Все, что вам нужно сделать, это щелкнуть правой кнопкой мыши столбец, для которого вам нужен дубликат, а затем нажать «Создать дубликат столбца».
7. Объединить столбец
Обычно для объединения столбцов и ячеек мы используем формулы в Excel, но с Power Query это можно сделать намного проще.
Помните, мы разделили список сотрудников (Совет № 4). Теперь, давайте объединим его, используя пробел.
Следуй этим шагам:
- Как только вы добавите данные в редактор, выберите оба столбца.
- После этого щелкните по ним правой кнопкой мыши и выберите «Объединить столбцы».
- Теперь в окне слияния столбцов выберите разделитель из выпадающего списка (здесь мы используем пробел) и добавьте имя для нового объединенного столбца.
- Нажмите OK и загрузите данные в таблицу.
Совет: вы также можете использовать собственный разделитель для объединения двух столбцов.
8. Транспонировать столбец или строку
В Power Query транспонирование — это проще простого. Да, всего один клик.
- Как только вы загрузите данные в редактор, вам просто нужно выбрать столбец (столбцы) или строку (и).
- Перейдите на вкладку «Преобразование» ➜ Таблица ➜ «Транспонировать».
И все.
9. Заменить / удалить ошибки
Это крутая вещь. Обычно для замены или удаления ошибок в Excel вы можете использовать опцию поиска и замены или код VBA. Но в Power Query все намного проще.
Посмотрите на столбец ниже, где у вас есть некоторые ошибки, вы можете заменить их.
Когда вы щелкнете правой кнопкой мыши по столбцу, у вас будет два варианта, как с ними справиться.
- Заменить ошибки
- Удалить ошибки
10. Изменить тип данных
Посмотрите, это обычное дело: У вас есть данные в столбце, но они не в нужном формате. Поэтому каждый раз нужно менять его формат.
В приведенном выше примере у нас есть столбец дат, но мы видим просто числа. Чтобы преобразовать их в дату, вы можете использовать Power Query. Это очень просто.
- Прежде всего, откройте данные в редакторе
- После этого выберите столбец и перейдите на вкладку Преобразование.
- Теперь из типа данных выберите «Дата».
Вот, что получилось.
Совет: в большинстве случаев Power Query автоматически определяет тип данных, но если это не так, вы можете изменить его, как в приведенном выше примере.
11. Добавить столбец из примеров
Вот в чем дело: в Power Query есть возможность добавить образец столбца, который на самом деле не является образцом, связанным с текущим столбцом. Позволь мне привести пример:
В приведенном выше примере мы преобразовали числа в даты, и теперь предположим, что вам нужно добавить столбец, в котором необходимо указать название дня недели для этих дат.
Вместо использования формулы или любого другого параметра, в Power Query мы можем использовать параметр «Добавить столбец из примеров».
Вот как это сделать:
- После того, как вы отправите свои данные в редактор, выберите столбец.
- Потом щелкните по нему правой кнопкой мыши и выберите «Добавить столбец из примеров».
- Здесь вы получите пустой столбец. Нажмите на первую ячейку столбца, чтобы получить список значений, которые вы можете вставить.
- Выберите «Название дня недели с Дата» и нажмите «ОК».
Все! Столбец заполнен.
12. Отменить таблицу
Я написал полное пошаговое руководство, чтобы отменить вывод данных в виде таблицы с помощью Power Query:
- Прежде всего, выберите данные кросс-таблицы и перейдите на вкладку «Данные».
- На вкладке данных перейдите к Скачать & Преобразовать → Из таблицы.
- Когда вы щелкнете по нему, он преобразует ваши данные кросс-таблицы в таблицу Excel (если это уже не так).
- Данные мгновенно загрузятся в редактор Power Query.
- Отсюда нам нужно выбрать все столбцы, которые мы хотим отключить.
- Для этого выберите столбец Янв, нажмите и удерживайте клавишу Shift и выберите столбец Дек.
- После этого щелкните по нему правой кнопкой мыши и выберите «Отменить свертывание столбцов».
- Теперь все значения 12-ти столбцов разделены на два столбца. В одном — месяц, в другом — сумма.
- Последнее, что вам нужно сделать, это переименовать столбцы. Для этого щелкните правой кнопкой мыши по столбцу и переименуйте их.
- В конце нажмите «Закрыть и загрузить».
Теперь ваши данные кросс-таблицы преобразуются в простые данные, и вы можете использовать их для создания сводных таблиц и всего прочего для дальнейшего анализа и составления отчетов о продажах.
13. Изменить регистр
Как в функциях, которые вы используете в Excel, в Power Query есть пакет опций для изменения регистра текста.
- нижний регистр
- ВЕРХНИЙ РЕГИСТР
- Каждое Слово С Прописной
Вы можете сделать это, щелкнув правой кнопкой мыши по столбцу и выбрать любой из трех указанных выше вариантов. Или перейдите на вкладку «Преобразование» ➜ «Столбец Текст» ➜ «Формат».
14. Усечь и Очистить
Чтобы очистить данные или удалить ненужные пробелы, вы можете использовать опции Усечь и Очистить в Power Query.
Шаги просты:
- Щелкните правой кнопкой мыши по столбцу или выберите все столбцы, если у вас несколько столбцов.
- Перейдите к опции преобразования и выберите любую из опций:
- Усечь: для удаления лишних пробелов из ячейки.
- Очистить: для удаления непечатаемых символов из ячейки.
15. Добавить префикс / суффикс
Итак, у вас есть список значений, и в этот список вы хотите добавить префикс / суффикс в каждую ячейку. В Excel вы можете использовать функцию СЦЕПИТЬ, но в Power Query есть более простой способ.
- Прежде всего, выберите столбец, в который нужно добавить префикс / суффикс.
- Затем перейдите на вкладку «Преобразование» ➜ Столбец Текст ➜ Формат ➜ Добавить префикс / Добавить суффикс.
- Как только вы нажмете одну из опций, откроется диалоговое окно для ввода текста.
- После ввода текста нажмите ОК.
Опция работает одинаково для чисел, текста и дат.
16. Извлечь значения
Если вы разбираетесь в формулах, то вы согласитесь со мной, что для извлечения текста или числа из ячейки необходимо комбинировать несколько функций. Power Query решает много подобных задач. У вас есть семь способов извлечь значения из ячейки. И да, одним щелчком мыши.
Просто посмотрите на варианты, которые у вас есть.
Эти опции закрыли все основные вещи задачи, которые вы привыкли решать с помощью формул.
17. Только дата или время
Часто бывает, что у вас есть дата и время в одной ячейке, но вам нужна только одна из них.
Для этого в Power Query вам нужен всего лишь один клик, вот шаги.
- Выберите столбец, где у вас есть дата и время вместе.
- Если вам нужна Дата: щелкните правой кнопкой мыши ➜ Преобразование ➜ Только дата;
- Если хотите Время: щелкните правой кнопкой мыши ➜ Преобразование ➜ Только время.
18. Объедините дату и время
Теперь у вас есть отдельно дата и время. Значит, пора узнать, как их объединить.
Это довольно просто.
- Прежде всего, загрузите ваши данные в редактор.
- После этого выберите оба столбца (Дата и время) и перейдите на вкладку преобразования.
- Теперь из группы Столбец «Дата и время» перейдите к «Дата» и нажмите «Объединить дату и время».
Теперь у вас есть новый столбец с объединенным данными.
19. Округление чисел
У нас есть функции для округления чисел в Excel, но также есть и Power Query.
Вот варианты:
- Округление с увеличением.
- Округление с уменьшением.
- Округление: Вы можете выбрать, до какого знака после запятой округлить.
Шаги:
- Прежде всего, откройте ваши данные в редакторе.
- Выберите столбец правой кнопкой мыши ➜ Преобразование ➜ Округление и выберите любой из трех вариантов.
Примечание. Когда вы выбираете опцию «Округление», вам нужно ввести количество десятичных знаков для округления.
20. Расчеты
В Power Query есть варианты, которые вы можете использовать для выполнения расчетов. Посмотрите на приведенный ниже список.
- Стандартный
- Статистика
- Научный
- Тригонометрические
- Округление
- Информация
Вы можете найти все эти опции на вкладке Преобразование.
Для выполнения любого из этих расчетов вам нужно выбрать столбец и выбрать опцию.
21. Группировка
Как и сводные таблицы, Power Query — отличный вариант для группировки. Вы можете найти эту опцию на вкладке Преобразование.
Допустим, у вас большой набор данных и вы хотите создать сводную таблицу. Вот что вам нужно сделать:
- На вкладке «Преобразование» нажмите «Группировать по», откроется диалоговое окно.
- Теперь в этом диалоговом окне выберите столбец, который вы хотите сгруппировать.
После этого добавьте имя, выберите операцию и столбец, в котором у вас есть значения.
- В конце нажмите ОК.
Примечание. В параметре «Группировать по» также есть несколько расширенных опций, которые можно использовать для создания многоуровневой групповой таблицы.
22. Удалить знак отрицания
Есть много методов удаления отрицательного знака, и один из них — это Power Query.
Щелкните правой кнопкой мыши по столбцу и перейдите в Преобразование, а затем нажмите на Абсолютное значение.
23. Добавить настраиваемый столбец
Хотя в Power Query есть много опций, вы также можете создать пользовательский столбец, используя формулу расчета. Выполните следующие шаги, чтобы его создать:
- Прежде всего, перейдите на вкладку Добавление столбца ➜ Настраиваемый столбец.
- Здесь у вас появится диалоговое окно для создания формулы для использования в столбце (сейчас я хочу умножить количество на цену). Ведите формулу в поле формулы.
Совет. Когда вы вводите формулу, в диалоговом окне появится сообщение, если в формуле есть какая-то ошибка.
24. Автообновление запроса
Из всех советов и приемов, которые я упомянул здесь, этот является наиболее важным. Когда вы создаете запрос, вы можете сделать его автоматическим обновляемым (вы можете установить таймер).
Вот шаги:
- На вкладке «Данные» нажмите «Существующие подключения»
- Теперь щелкните правой кнопкой мыши по нужному запросу, далее Изменить свойства подключения.
- Введите минуты в открывшемся диалоговом окне.
- В конце нажмите ОК.
25. Создайте сводную таблицу из нескольких рабочих книг.
Иногда мы получаем или собираем данные из разных книг. И в этом случае создание сводной таблицы потребует дополнительных усилий для объединения этих нескольких рабочих книг в одну.
Но вы можете сделать это радостью с помощью Power query. Выполните эти три простых шага, чтобы создать сводную таблицу из разных рабочих книг.
У меня есть четыре книги с данными о продажах для разных отделений.
Убедитесь, что все эти файлы в одной папке.
Шаг 1 — Объедините файлы с помощью Power Query
Прежде всего, нам нужно объединить все файлы в одну таблицу с Power Query.
- Перейдите на вкладку «Данные» ➜ «Скачать & Преобразовать» ➜ «Создать запрос» ➜ «Из файла» ➜ «Из папки».
- Теперь в окне выбора папки нажмите «Обзор» и выберите папку, в которой находятся все файлы.
- Нажмите ОК.
- Вы увидите окно «Объединить файлы».
- В этом окне выберите лист с вашими данными во всех книгах. Важно: Убедитесь, что во всех книгах указано одинаковое имя листа!
- После того, как вы нажмете OK, Power Query отправит все данные из рабочих книг в редактор.
Шаг 2 — Подготовка данных для сводной таблицы
Теперь нам нужно внести небольшие изменения в наши данные, чтобы подготовить их к сводной таблице. Если вы посмотрите на данные, у нас появился дополнительный столбец с именем исходного файла.
- Щелкните правой кнопкой мыши по этому столбцу и выберите «Разделить столбец» ➜ «По разделителю».
- В окне разделителя выберите «Пользовательский», добавьте «.» в качестве разделителя и выберите «Самый левый разделитель».
- Нажмите ОК.
- После этого удалите второй столбец.
- Теперь переименуйте первый столбец.
- Теперь ваши данные готовы. Нажмите на закрыть и загрузить.
Шаг 3 — Вставьте сводную таблицу
На данный момент у нас есть новая рабочая таблица в рабочей книге с объединенными данными из всех четырех файлов. Теперь пришло время создать из них сводную таблицу.
- Выберите таблицу и перейдите на вкладку «Вставка» и нажмите кнопку «Сводная таблица».
- Откроется окно создания сводной таблицы. Нажмите OK, и вы получите новую сводную таблицу в своей книге.
Поздравляю! Вы успешно создали новую сводную таблицу из разных файлов.
Заключение
Вы можете не пользоваться POWER QUERY. Но… Многие вещи, которые мы делаем с формулами и функциями или кодами VBA, могут быть автоматизированы с помощью Power Query.
Я надеюсь, что приведенные выше советы вдохновляют вас использовать его все больше и больше.
Не забудьте поделиться своими мнениями со мной в разделе комментариев. И, пожалуйста, не забудьте поделиться этой информацией со своими друзьями, я уверен, что они это оценят.
Что это? Power Query – это бесплатная надстройка для продуктов «Майкрософт», которая значительно облегчает работу с данными: сбор, подготовку, преобразование. Ее не нужно скачивать и как-то специально настраивать.
Как использовать? Интерфейс PQ интуитивно понятен, разобраться в нём не составит труда. Чтобы понять, на что способна эта надстройка, и получить базовые навыки работы в ней, читайте наш материал.
В статье рассказывается:
- Возможности Power Query
- Подключение к данным в Power Query
- Предварительная настройка Power Query
- Редактор запросов Power Query
- Преобразование данных в Power Query
- Строка формул и расширенный редактор
- Типы данных Power Query
- Импорт данных из Power Query
- Использование Power Query в продуктах и службах «Майкрософт»
-
Пройди тест и узнай, какая сфера тебе подходит:
айти, дизайн или маркетинг.Бесплатно от Geekbrains
В статьях о MS Excel в последнее время часто встречаются малопонятные термины, начинающиеся со слова Power. Из контекста этих материалов не всегда получается понять, что подразумевается под Power Query, Power Pivot, Power BI и т. п. Самое главное — неясно, каким образом эти понятия связаны между собой и какую пользу они приносят простому пользователю табличного редактора.
Между тем еще в 2013 году в Microsoft была создана специальная группа разработчиков с целью выпуска бесплатной надстройки для Excel. Разработка получила несколько названий: Power Query, Data Explorer, Get&Transform. Данная надстройка служит для выполнения множества повседневных задач:
- Загрузка данных в таблицу Excel
Экспортировать данные можно из почти 40 сторонних форматов: SQL, Oracle, MS Access, Teradata, целый ряд корпоративных систем ERP (SAP, Microsoft Dynamics, 1C и др.), а также источники из интернета (почти все сайты, сервисы Facebook и Google Analytics).
- Сбор информации из файлов всех основных типов данных
Среди поддерживаемых типов — XLSX, TXT, CSV, JSON, HTML, XML. При этом возможно групповое извлечение данных сразу из нескольких файлов, находящихся в одной папке. Доступна автоматическая загрузка информации из всех листов Excel.
Скачать файл
- Очищение полученных данных от лишних элементов
Надстройка удаляет в частности пустые столбцы и строки, лишние пробелы, непечатаемые символы, различную служебную информацию, а также повторяющиеся значения в ячейках.
- Приведение данных к нужному виду
С помощью PQ можно менять регистр на правильный, приводить цифры к числовому формату, заполнять пробелы, исправлять заголовки таблиц, разделять текстовые фрагменты на столбцы и склеивать их снова в единый текст, выполнять некоторые другие полезные операции.
- Приведение таблицы к нужному виду
Среди возможных операций над таблицами — фильтрация, сортировка и смена порядка столбцов, транспонирование значений, генерация итогов, трансформация кросс-таблиц в обычный плоский формат и обратно.
- Подстановка значений из одной таблицы в другую
Эта операция выполняется по совпадению одного или нескольких параметров. Таким образом, она является полной заменой встроенной в Excel функции ВПР (VLOOKUP) и ее аналогов.
Надстройка представлена в двух вариантах: как отдельный модуль, доступный для скачивания с официального сайта Microsoft (для Excel 2010-13), и как сервисная функция в составе редактора (для Excel 2016). В первом варианте установка PQ добавляет в таблицу новую вкладку. Во втором же случае весь функционал надстройки уже имеется в табличном редакторе по умолчанию — он доступен как группа Get & Transform (Получить и преобразовать) во вкладке Data (Данные).
Оба варианта имеют абсолютно одинаковые возможности.
Power Query обладает отличительной особенностью: все совершенные операции сохраняются как запрос из совокупности шагов, представленный на внутреннем языке программирования M. Каждый шаг может редактироваться и повторяться неограниченное число раз. При этом происходит обновление запроса.
Многие пользователи считают эту надстройку самой полезной в Excel. С ее помощью значительно облегчается выполнение многих рутинных задач. В прежние времена для автоматизации действий писались сложные макросы, теперь же это легко выполняется в PQ. К тому же этот инструмент абсолютно бесплатен, что делает его лидером среди возможных конкурентов. Сегодня он должен иметься в арсенале каждого пользователя Excel, обладающего навыками работы выше среднего.
Подключение к данным в Power Query
Как упоминалось ранее, подключаться могут данные из большого количества различных источников. Это и другие Excel-таблицы, и базы данных популярных форматов, и данные из OData, и даже документы PDF. Также доступна загрузка информации из Power BI с последующим написанием запроса с нуля.
Как получить полный список источников, с которыми может работать Power Query? Excel позволяет увидеть в разделе «Получить данные» («Создать запрос»), находящемся во вкладке «Данные».
Разберем этот процесс на примере переноса значений из обычной таблицы.
Сперва необходимо выделить таблицу и перейти в меню «Из таблицы». В разных версиях редактора это делается по-разному:
- Excel 2010-13 — через вкладку «Power Query».
- Excel 2016 и выше — через меню Данные.
Откроется окно, в котором нужно поставить галочку «Таблица с заголовками».
После этого произойдет преобразование обычной таблицы в «умную». Останется перейти во вкладку «Главная» и нажать «Закрыть и загрузить».
Далее для данного файла полезно посмотреть запросы Power Query. Списки их доступны во вкладке «Данные» в разделе «Запросы и подключения».
Предварительная настройка Power Query
Редактор запросов в Excel открывается следующим образом:
- Вкладка «Данные» — раздел «Получить и преобразовать данные» — пункт «Получить данные» — «Запустить редактор запросов»
Топ-30 самых востребованных и высокооплачиваемых профессий 2023
Поможет разобраться в актуальной ситуации на рынке труда
Подборка 50+ ресурсов об IT-сфере
Только лучшие телеграм-каналы, каналы Youtube, подкасты, форумы и многое другое для того, чтобы узнавать новое про IT
ТОП 50+ сервисов и приложений от Geekbrains
Безопасные и надежные программы для работы в наши дни
Уже скачали 20401
Далее в открывшемся окне выполняются следующие действия: «Файл» — «Параметры и настройки» — «Параметры запроса» — «Редактор Power Query». Здесь напротив пункта «Отобразить редактор запросов» должна быть поставлена галочка.
Теперь необходимо перейти в пункт «Конфиденциальность» и включить опцию «Всегда игнорировать уровни конфиденциальности». После нажатия на кнопку ОК нужно перезапустить редактор.
Редактор запросов Power Query
Открыть редактор также можно путем двойного клика по имени запроса на вкладке «Запросы и подключения». Рассмотрим интерфейс более подробно.
Редактор запросов состоит из следующих функциональных блоков:
- Лента для вкладок «Главная», «Преобразование», «Добавить столбец» и «Просмотр».
- Список созданных запросов (может быть свернут).
- Строка для ввода формул.
- Имя открытого запроса.
- История выполненных операций над запросом и данными (доступны редактирование шагов, изменение их последовательности выполнения, добавление новых или удаление существующих шагов).
Читайте также
- Область предварительного просмотра, позволяющая просматривать в реальном времени результат изменений на каждом шаге.
- Меню операций с данными (может быть открыто кликом правой клавишей мыши).
- Контекстное меню каждого шага (в случае выбора этого шага правой клавишей мыши).
Преобразование данных в Power Query
Полезно подробнее изучить, каким образом преобразовывать данные посредством Power Query. Пример, рассмотренный ниже, наглядно продемонстрирует достаточно простую работу с надстройкой.
Итак, имеется таблица расходов, разбитых по месяцам, а также разделенных на две категории.
Только до 17.04
Скачай подборку тестов, чтобы определить свои самые конкурентные скиллы
Список документов:
Тест на определение компетенций
Чек-лист «Как избежать обмана при трудоустройстве»
Инструкция по выходу из выгорания
Чтобы получить файл, укажите e-mail:
Подтвердите, что вы не робот,
указав номер телефона:
Уже скачали 7503
Общеизвестно, что такое форматирование данных не позволит построить сводную таблицу. Для приведения значений к нужной структуре используем функционал PQ. Последовательность действий будет следующей:
- Выделение всей таблицы либо одной ячейки.
- Выбор пункта «Из таблицы» (или « Из таблицы/диапазона») во вкладке «Данные».
- Активация опции «Таблица с заголовками» в открывшемся окне.
- Выделение столбцов с месяцами (например, май и июнь) путем одновременного нажатия Ctrl и левой клавиши мыши по соответствующим названиям столбцов внутри редактора запросов.
- Преобразование таблицы (меню «Преобразование» — «Заполнить» — «Вниз») с заполнением пустых строк значениями верхних ячеек.
Все действия, выполняемые с использованием надстройки, автоматически фиксируются. Они отображены в правой части рабочего пространства («Параметры запроса» — «Примененные шаги»).
Как уже упоминалось, шаги запроса доступны для редактирования. Для этого необходимо выбрать конкретное действие указателем мыши и изменить это действие. Изменение сразу же отобразится в панели предварительного просмотра. Перемещение или добавление шагов также осуществляется мышью.
Все операции с данными PQ выполняет пошагово. То есть, каждое следующее действие опирается на результаты предыдущего. Это нужно учитывать, добавляя новые шаги или изменяя последовательность их выполнения. То есть, следует всегда проверять корректность всех следующих шагов путем клика по самому нижнему.
Помимо рассмотренных простейших операций, надстройка может выполнять и более сложные, среди которых фильтрация, замена и группировка значений, заполнение пустых ячеек, удаление дубликатов. Поддерживаются расширенная работа с текстом и числами, выполнение простых вычислений, различные виды трансформации таблиц, объединение данных и многое другое.
Строка формул и расширенный редактор
В работе с графическим редактором рано или поздно возникают ситуации, когда штатными средствами грамотно преобразовать данные не представляется возможным. Это требует особой конфигурации программы с применением параметров, не поддерживаемых графическим интерфейсом. Для таких случаев существуют специальные формулы Power Query, являющиеся частью встроенного языка M. Подсистема позволяет выполнять скрипты преобразований в фоновом режиме.
Язык преобразования данных M обрабатывает каждое событие, происходящее внутри запроса. Однако для использования расширенного функционала PQ лучше использовать соответственно расширенный редактор.
Он предоставляет полный доступ к скрипту запроса для последующей модификации. Другими словами, если функции пользовательского интерфейса не обеспечивают требуемую точность, следует воспользоваться расширенным редактором и инструментами языка M для гибкой настройки функций и преобразований.
При этом глубоко разбираться в коде необязательно. Большая часть операций выполняется мышью по пунктам меню.
Для ввода формул используется соответствующая строка, которая по умолчанию скрыта. Для ее включения необходимо перейти во вкладку «Просмотр» и активировать пункт «Строка формул».
Ознакомиться с доступными формулами можно в этом же блоке, нажав на кнопку «Расширенный редактор». Откроется окно, в котором отобразится полный текст запроса.
Типы данных Power Query
Типы данных — это неотъемлемая составляющая любого запроса PQ. Поэтому их обязательно нужно определять. Как правило, типы данных задаются после всех выполненных преобразований. Делается это одним из трех способов:
- через вкладку «Главная», далее «Тип данных» («Преобразование»), далее «Определить тип данных»;
- через клик указателем мыши по значку типа данных в названии столбца;
- через вкладку «Преобразование», далее «Дата», далее «Выполнить анализ».
Читайте также
Проверку правильности задания типов данных нужно проводить перед каждым сохранением запроса. При этом рекомендуется вручную удалять автоматически добавляемый шаг «Измененный тип».
Импорт данных из Power Query
Что делать с данными после преобразования в Power Query? Как добавить их в другие программы? Разберем несколько доступных вариантов импорта данных.
Для начала следует определить подходящие способы в процессе сохранения запроса («Главная» — «Закрыть и загрузить в…»). В сохраненном запросе параметры импорта задаются на вкладке «Запросы и подключения» путем клика правой клавишей мыши по названию запроса и выбора «Загрузить в…».
В редакторе Excel предлагается импортировать преобразованные данные одним из нескольких способов:
- Выгрузка на лист
Сперва задаем способ представления данных, затем переходим во вкладку «Таблица», далее вставляем данные на лист. При этом автоматически создается смарт-таблица.
- Сводная таблица (диаграмма)
Здесь после определения способа представления нужно перейти в «Отчет сводной таблицы» («Сводная таблица»). Импорт данных будет выполнен в соответствующем виде.
- Только подключение
Для сохранения запроса следует выбрать пункт «Только создать подключение».
- Добавление данных в модель данных
Активация пункта «Добавить эти данные в модель данных» приводит к добавлению выбранных данных в модель Power Pivot.
Использование Power Query в продуктах и службах «Майкрософт»
Различные продукты от Microsoft могут так или иначе поддерживать Power Query. Таблица, приведенная ниже, демонстрирует наличие либо отсутствие этой настройки в конкретном ПО.
Продукт | M engine1 | Power Query Desktop2 |
Power Query Online3 |
Потоки данных 4 |
Excel для Windows | + | + | — | — |
Excel для Mac | + | — | — | — |
Power BI | + | + | + | + |
Power Apps | + | — | + | + |
Power Automate | + | — | + | — |
Сервер отчетности Power BI | + | + | — | — |
Облачная платформа Azure | + | — | + | + |
Сервисы интеграции SQL Server | + | — | — | — |
Сервисы аналитики SQL Server | + | + | — | — |
Dynamics 365 Customer Insights | + | — | + | + |
Mengine | Используется язык M для базового механизма выполнения запросов. | |||
Power Query Desktop | Интерфейс PQ используется в классических приложениях. | |||
Power Query Online | Интерфейс PQ используется в веб-приложениях. | |||
Dataflows | PQ представлен в качестве облачного сервиса, не зависящего от конкретного продукта. Результаты преобразований данных используются другими приложениями. |
Итак, Power Query обладает внушительным арсеналом средств для автоматизации рутинных действий, связанных с обработкой данных из различных источников. У каждого опытного пользователя MS Excel эта надстройка должна быть подключена, изучить ее возможности под силу практически каждому.
Это продолжение перевода книги Кен Пульс и Мигель Эскобар. Язык М для Power Query. Главы не являются независимыми, поэтому рекомендую читать последовательно.
Предыдущая глава Содержание Следующая глава
Хотя большинство примеров в предыдущих главах заканчивалось загрузкой запроса Power Query в Таблицы Excel, это – не единственный вариант для размещения данных. По большому счету, у вас есть три варианта загрузки, некоторые из которых можно использовать в комбинации: Таблицы Excel, только подключение, модель Данных PowerPivot.
Рис. 10.1. Два запроса только для подключения, готовые к дальнейшему использованию
Скачать заметку в формате Word или pdf, примеры в формате архива
Таблицы Excel
Это метод загрузка по умолчанию. Когда вы нажимаете кнопку Закрыть и загрузить в редакторе Power Query, Excel создает новую Таблицу на новом листе для хранения данных запроса. Вновь созданная Таблица наследует имя запроса с несколькими изменениями:
- Пробелы преобразуются в подчеркивания.
- Если имя запроса уже используется в книге Excel для ранее созданной Таблицы или именованного диапазона, новое имя будет дополнено суффиксом _2
И вам не следует давать запросу имя, совпадающее с функцией Excel. Excel интерпретирует именованные диапазоны перед функциями, поэтому наличие Таблицы с именем ОКРУГЛ или ЛЕВСИМВ приведет к тому, что все ячейки, использующие эти функции, вернут ошибки.
Запросы только для подключения
Запросы для подключения настраиваются таким образом, чтобы избежать размещения данных на листе. Может возникнуть вопрос, зачем нужны такие запросы? Один из ответов был дан в главе 9: такие запросы позволяют не размещать ненужные данные на листах Excel. Но позже запросы можно объединить, и разместить в Таблице объединенный запрос.
Загрузка в Таблицу и создание запроса только для подключения являются взаимоисключающими опциями.
Откройте файл Load Destinations.xlsx, и используя инструкции из главы 9, сначала создайте два подключения к таблицам продаж за май и июнь (рис. 10.1). Теперь можно объединить два запроса:
- Щелкните правой кнопкой мыши запрос Sales—May –> Добавить
- В окне Добавление выберите Sales—Jun (рис. 10.2), нажмите Ok
- Переименовать запрос Sales
- Щелкните правой кнопкой мыши столбец Date –> Преобразование –> Только дата
- Главная –> Закрыть и загрузить
Рис. 10.2. Окно Добавление
Power Query создает новую таблицу, которая содержит все данные.
Рис. 10.3. Таблица в Excel на основе запроса, созданного добавлением из двух запросов только для подключения
Загрузка в модель данных Power Pivot
- В Excel в области Запросы и подключения щелкните правой кнопкой мыши запрос Sales
- В редакторе Power Query кликните стрелку вниз на кнопке Закрыть и загрузить
- Выберите Только создать подключение, установите флажок Добавить эти данные в модель данных (рис. 10.4)
- Нажмите Ok
Рис. 10.4. Изменение параметров для загрузки запроса в модель данных Power Pivot
Появится окно с предупреждением о возможной потере данных. Это происходит потому, что ранее данные размещались в Таблице на листе Excel. А теперь в запросе остается только подключение. Поскольку ровно на это направлены ваши изменения, подтвердите, что всё Ok. Перейдите на вкладку Power Pivot –> Управление:
Рис. 10.5. Запрос Sales, загруженный в модель данных Power Pivot
Изменения в запросе Power Query плавно перетекают в Power Pivot. Добавьте новый столбец в таблицу Sales в Power Query, чтобы увидеть, как Power Pivot обрабатывает его:
- Вернитесь в Excel, в области Запросы и подключения наведите мышку на запрос Sales, во всплывающем окне Sales, кликните Изменить
- В редакторе Power Query выберите столбец Date, перейдите на вкладку Добавление столбца –> Дата –> Месяц –> Месяц (рис. 10.6)
- Главная –> Закрыть и загрузить
- Вернитесь в окно Power Pivot
Рис. 10.6. Добавление столбца Месяц; чтобы увеличить изображение кликните на нем правой кнопкой мыши и выберите Открыть картинку в новой вкладке
Появился новый столбец – Месяц. Даже не потребовалось нажимать Обновить:
Рис. 10.7. Столбец, добавленный в Power Query, автоматически отобразился в модель данных Power Pivot
Изменение параметров загрузки запросов по умолчанию
Если вы обнаружите, что вы делаете много изменений при загрузке запросов, вы можете установить новые опции по умолчанию. В Excel 2016+ пройдите Данные –> Получить данные –> Параметры запроса. Выберите Указать пользовательские параметры загрузки по умолчанию, а затем настройте эти параметры по своему усмотрению. Хитрость в том, что, сняв флажок Загрузить в лист, вы создаете запрос только для подключения. Также можно выбрать Загрузить в модель данных.
Рис. 10.8. Изменение настроек загрузки по умолчанию