Excel для Microsoft 365 Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Еще…Меньше
Просто с помощью редактора Power Query вы создавали формулы Power Query. Давайте посмотрим, как работает Power Query, посмотрев на него. Чтобы узнать, как обновлять или добавлять формулы, просто посмотрите редактор Power Query в действии. Вы даже можете скатить собственные формулы с помощью расширенных редакторов.
Редактор Power Query предоставляет запросы и возможности формирования данных для Excel, которые можно использовать для повторного формирования данных из различных источников. Чтобы отобразить окно редактора Power Query,импортировать данные из внешних источников на Excel, выбрать ячейку в данных, а затем выбрать запрос >Изменить. Ниже следующую сводку основных компонентов.
-
Лента редактора Power Query, используемая для формировании данных
-
The Queries pane that you use to locate data sources and tables
-
Контекстные меню, удобные для быстрого доступа к командам на ленте
-
Предварительный просмотр данных с результатами действий, примененных к данным
-
В области Параметры запроса со списком свойств и каждого шага запроса
При этом каждый шаг запроса основан на формуле, которая отображается в панели формул.
Иногда нужно изменить или создать формулу. В формулах используется язык формул Power Query, который можно использовать для создания как простых, так и сложных выражений. Дополнительные сведения о синтаксисе, аргументах, замечаниях, функциях и примерах см. в power Query M formula language.
Используя в качестве примера список футбольного мяча, используйте Power Query, чтобы получить необработанные данные, найденные на веб-сайте, и превратить их в хорошо отформатированную таблицу. Посмотрите, как создаются шаги запроса и соответствующие формулы для каждой задачи в области запроса Параметры в области Примененные шаги и в области формул.
Последовательность действий
-
Чтобы импортировать данные, выберите данные > из Интернета,введите «http://en.wikipedia.org/wiki/UEFA_European_Football_Championship» в поле URL-адрес, а затем выберите ОК.
-
В диалоговом окне Навигатор выберите таблицу Результаты [Изменить] слева, а затем выберите Преобразовать данные в нижней части. Появится редактор Power Query.
-
Чтобы изменить имя запроса по умолчанию, в области запроса Параметры в области Свойства удалите «Результаты [Изменить]», а затем введите «ЫК».
-
Чтобы удалить ненужные столбцы, выберите первый, четвертый и пятый столбцы, а затем выберите главная> удалить столбец > удалить другие столбцы.
-
Чтобы удалить ненужные значения, выберите Столбец1, выберите Главная> Заменитьзначения , введите «сведения» в поле Значения для поиска, а затем выберите ОК.
-
Чтобы удалить строки со словом «Год», выберите стрелку фильтра в столбце «Столбец1»,снимите его рядом с полем «Год», а затем выберите ОК.
-
Чтобы переименовать столбцы, дважды щелкните каждый из них, а затем измените «Столбец1» на «Год», «Столбец4» на «Winner» и «Столбец5» на «Итоговая оценка».
-
Чтобы сохранить запрос, выберите главная >Закрыть & загрузить.
Результат
В следующей таблице содержится сводка каждого примененного шага и соответствующей формулы.
Шаг запроса и задача |
Формула |
---|---|
Source Подключение к веб-источнику данных |
= Web.Page(Web.Contents(«http://en.wikipedia.org/wiki/UEFA_European_Football_Championship»)) |
Navigation Выбор таблицы |
=Source{2}[Data] |
Changed Type Изменение типов данных (которые Power Query делает автоматически) |
= Table.TransformColumnTypes(Data2,{{«Column1», type text}, {«Column2», type text}, {«Column3», type text}, {«Column4», type text}, {«Column5», type text}, {«Column6», type text}, {«Column7», type text}, {«Column8», type text}, {«Column9», type text}, {«Column10», type text}, {«Column11», type text}, {«Column12», type text}}) |
Удалены другие столбцы Удаление ненужных столбцов |
= Table.SelectColumns(#»Changed Type»,{«Column1», «Column4», «Column5»}) |
Заменено значение Замена значений для очистки значений в выбранном столбце |
= Table.ReplaceValue(#»Removed Other Columns»,»Details»,»»,Replacer.ReplaceText,{«Column1»}) |
Отфильтрованные строки Фильтрация значений в столбце |
= Table.SelectRows(#»Replaced Value», each ([Column1] <> «Year»)) |
Переименованные столбцы Измененные заглавные столбцы должны быть осмысленными |
= Table.RenameColumns(#»Filtered Rows»,{{«Column1», «Year»}, {«Column4», «Winner»}, {«Column5», «Final Score»}}) |
Важно Будьте внимательны при редактировании действий«Источник»,»Навигация» и «Измененный тип», поскольку они создаются Power Query для определения и создания источника данных.
Показ или скрытие панели формул
По умолчанию отображается формула, но если она не видна, ее можно отыгрывать.
-
Выберите Просмотр >макета > формул.
Edit a formula in the formula bar
-
Чтобы открыть запрос, найдите ранее загруженную из редактора Power Query, выберем ячейку в данных и выберите запрос> Изменить. Дополнительные сведения см. в этойExcel.
-
В области Параметры запроса в области Примененныешаги выберите шаг, который вы хотите изменить.
-
В области формул найдите и измените значения параметров, а затем нажмите ввод. Например, измените эту формулу, чтобы сохранить столбец 2:
До: = Table.SelectColumns(#»Changed Type»,{«Column4», «Column1», «Column5»})
после:= Table.SelectColumns(#»Changed Type»,{«Column2», «Column4», «Column1», «Column5»}) -
Нажмите значок или нажмите ввод, чтобы увидеть новые результаты в режиме предварительного просмотра данных.
-
Чтобы увидеть результат на Excel, выберите Главная > Закрыть & Загрузка.
Создание формулы в панели формул
Для простого примера формулы преобразуем текстовое значение в нужный с помощью функции Text.Proper.
-
Чтобы открыть пустой запрос, в Excel выберите Данные> Получить данные > из других источников > Пустой запрос. Дополнительные сведения см. в этойExcel.
-
Введите в формулу=Text.Proper(«text value»), а затем нажмите ввод.
Результаты отображаются в режиме предварительного просмотра данных.
-
Чтобы увидеть результат на Excel, выберите Главная > Закрыть & Загрузка.
Результат:
При создании формулы Power Query проверяет ее синтаксис. Однако при вставке, переусортовке или удалении промежуточного шага запроса это может привести к разрыву запроса. Всегда проверять результаты в режиме предварительного просмотра данных.
Важно Будьте внимательны при редактировании действий«Источник»,»Навигация» и «Измененный тип», поскольку они создаются Power Query для определения и создания источника данных.
Редактирование формулы в диалоговом окне
Этот способ позволяет использовать диалоговое окно, которое зависит от шага. Синтаксис формулы знать не нужно.
-
Чтобы открыть запрос, найдите ранее загруженную из редактора Power Query, выберем ячейку в данных и выберите запрос> Изменить. Дополнительные сведения см. в этойExcel.
-
В области Параметры запроса в области Примененные шаги щелкните значок Изменить Параметры действия, который вы хотите изменить, или щелкните его правой кнопкой мыши и выберите изменить Параметры .
-
В диалоговом окне внести изменения и нажмем ОК.
Вставка шага
После выполнения шага запроса, в который были добавлены данные, шаг запроса добавляется под текущим этапом запроса. но при вставке шага запроса в середине шагов может возникнуть ошибка в последующих действиях. При попытке вставить новый шаг При попытке вставить новый шаг в Power Query отображается предупреждение Вставка шага, при этом изменяются поля, например имена столбцов, которые используются на всех шагах, которые следуют за ним.
-
В области Параметры запроса в области Примененныешаги выберите шаг, который должен предшествовать новому шагу и соответствующей формуле.
-
Выберите значок Добавить слева от панели формул. Можно также щелкнуть правой кнопкой мыши шаг и выбрать Вставить шаг после.Новая формула будет создана в формате := <nameOfTheStepToReference>
, например =Production.WorkOrder.
-
Введите новую формулу в формате:
=Class.Function(ReferenceStep[,otherparameters])
Например, предположим, что у вас есть таблица со столбцом Gender и вы хотите добавить столбец со значением «Ms». или «г-н», в зависимости от пола человека. Формула будет:
=Table.AddColumn(<ReferencedStep>, «Prefix», each if [Gender] = «F» then «Ms.» else «Mr.»)
Переусортовка шага
-
В области Запросы Параметры в области Примененныешаги щелкните правой кнопкой мыши шаг, а затем выберите Вверх илиВниз.
Удаление шага
-
Щелкните значок слева от шага или щелкните его правой кнопкой мыши и выберите удалить или Удалить до конца. Значок удаления также доступен слева от панели формул.
В этом примере мы преобразуем текст в столбце в нужный с помощью сочетания формул в расширенный редактор.
Например, у вас есть Excel «Заказы» со столбцом ProductName, который нужно преобразовать в нужный пример.
До:
После:
При создании расширенных запросов создается ряд шагов формулы запроса на основе выражения let. Используйте выражение let для назначения имен и вычисления значений, на которые затем ссылается предложение in, которое определяет шаг. Этот пример возвращает тот же результат, что и в разделе «Создание формулы в панели формул».
let
Source = Text.Proper(«hello world»)
in
Source
Вы увидите, что каждый шаг строится на основе предыдущего шага, ссылаясь на шаг по имени. Напоминаем, что в языке формул Power Query с чувствительностью к делу.
Этап 1. Открытие расширенных редакторов
-
В Excel выберите Данные> Получить данные > другие источники > пустой запрос. Дополнительные сведения см. в этойExcel.
-
В редакторе Power Query выберите главная> Расширенный редактор, который откроется с шаблоном выражения let.
Этап 2. Определение источника данных
-
Чтобы загрузить запрос на таблицу, выберите Готово ,а затем выберите Главная> Закрыть & Загрузка > Закрыть & Загрузить.
Результат:
Этап 3. Продвижение первой строки до заглавных
-
Чтобы открыть запрос, выберем ячейку с данными на > запрос. Дополнительные сведения см. в статьи Создание, загрузка и изменение запроса в Excel (Power Query).
-
В редакторе Power Query выберите Главная > Расширенный редактор, который откроется с помощью выписки, созданной на этапе 2:Определение источника данных.
-
В выражении let добавьте #»First Row as Header» и Table.PromoteHeaders следующим
образом:
let
Source = Excel.CurrentWorkbook(){[Name=»Orders»]}[Content],
#»First Row as Header» = Table.PromoteHeaders(Source)#x3#»First Row as Header»
-
Чтобы загрузить запрос на таблицу, выберите Готово ,а затем выберите Главная> Закрыть & Загрузка > Закрыть & Загрузить.
Результат:
Этап 4. Изменение каждого значения в столбце на правильное
-
Чтобы открыть запрос, выберем ячейку с данными на > запрос. Дополнительные сведения см. в этойExcel.
-
В редакторе Power Query выберите Главная> Расширенный редактор, который откроется с заявлением, созданным на этапе 3: Повысить первую строку до заглавных.
-
В выражении let преобразуйте каждое значение столбца ProductName в правильный текст с помощью функции Table.TransformColumns, ссылаясь на предыдущий шаг формулы запроса «Первая строка в качестве заглавного текста», добавив к источнику данных значение #»Заглавная буква каждого слова», а затем назначив результат «#»Преобразование каждого слова» в заглавную букву.
let
Source = Excel.CurrentWorkbook(){[Name=»Orders»]}[Content],
#»First Row as Header» = Table.PromoteHeaders(Source),
#»Capitalized Each Word» = Table.TransformColumns(#»First Row as Header»,{{«ProductName», Text.Proper}})
in
#»Capitalized Each Word» -
Чтобы загрузить запрос на таблицу, выберите Готово ,а затем выберите Главная> Закрыть & Загрузка > Закрыть & Загрузить.
Результат:
Вы можете управлять поведением панели формул в редакторе Power Query для всех книг.
Отображение или скрытие панели формул
-
Выберите Параметры> файла и Параметры > параметры запроса.
-
В левой области в области GLOBALвыберите Редактор Power Query.
-
В области справа в области Макет выберитеили отобразить формулу.
Включить или отключить M Intellisense
-
Выберите Параметры> файла и Параметры > параметры запроса .
-
В левой области в области GLOBALвыберите Редактор Power Query.
-
В области справа в области Формула выберитеили отберите включить M Intellisenseв панели формул, в расширенный редактор и в диалоговом окке настраиваемого столбца .
Примечание Изменение этого параметра вступает в силу при следующем переходе в окно редактора Power Query.
См. также
Справка по Power Query для Excel
Создание и вызов настраиваемой функции
Использование списка Примененные шаги (docs.com)
Использование пользовательских функций (docs.com)
Формулы Power Query M (docs.com)
Работа с ошибками (docs.com)
Нужна дополнительная помощь?
Excel для Microsoft 365 Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Еще…Меньше
Примечание: Эта статья выполнила свою задачу, и в скором времени ее использование будет прекращено. Чтобы избежать появления ошибок «Страница не найдена», мы удаляем известные нам ссылки. Если вы создали ссылки на эту страницу, удалите их, и вместе мы обеспечим согласованность данных в Интернете.
Примечание:
Надстройка Power Query предлагается в Excel 2016 в виде группы команд Скачать и преобразовать. Информация в этой статье относится и к Power Query, и к новой группе. Дополнительные сведения см. в статье Функция «Скачать и преобразовать» в Excel 2016.
Для создания формул Power Query в Excel можно использовать строку формул редактора запросов или расширенный редактор. Редактор запросов — это средство, включенное в Power Query, в котором можно создавать запросы к данным и формулы. Для создания этих формул используется язык формул Power Query. Существует множество формул Power Query, с помощью которых можно обнаруживать, объединять и уточнять данные. Подробные сведения обо всех видах формул Power Query см. в статье Категории формул Power Query.
Давайте создадим сначала простую формулу, а затем сложную.
-
Создание простой формулы
-
Создание сложной формулы
Создание простой формулы
В этом примере мы с помощью формулы Text.Proper() преобразуем текстовое значение, сделав первые буквы слов прописными.
-
На вкладке ленты POWER QUERY нажмите кнопку Из других источников и выберите пункт Пустой запрос.
-
В строке формул редактора запросов введите = Text.Proper(«text value»), а затем нажмите клавишу ВВОД или щелкните значок «Ввод».
-
Power Query отобразит результаты в области результатов формул.
-
Чтобы увидеть результат на листе Excel, нажмите кнопку Закрыть и загрузить.
Результат будет выглядеть на листе вот так:
В редакторе запросов можно также создавать сложные формулы.
Создание сложной формулы
В этом примере мы с помощью комбинации формул преобразуем текст в столбце, сделав первые буквы слов прописными. Можно воспользоваться языком формул Power Query, чтобы объединить несколько формул в шаги запроса для получения результирующего набора данных. Результат можно импортировать на лист Excel.
Примечание: В этой статье приведены базовые сведения о сложных формулах Power Query. Подробные сведения о формулах Power Query см. в статье Формулы Power Query.
Предположим, что есть таблица Excel с наименованиями товаров, в которых нужно сделать первые буквы слов прописными.
Исходная таблица выглядит так:
Результирующая таблица должна иметь такой вид:
Рассмотрим шаги формулы запроса, с помощью которых можно изменить исходную таблицу и сделать первые буквы слов в столбце ProductName прописными.
Пример составления сложного запроса с помощью расширенного редактора
Чтобы очистить исходную таблицу, создайте шаги формулы запроса с помощью расширенного редактора. Создадим каждый шаг формулы запроса, чтобы показать, как можно построить сложный запрос. Все шаги формулы запроса перечислены ниже. При создании сложного запроса сделайте следующее:
-
Создайте последовательность шагов формулы запроса, которая начинается с оператора let. Обратите внимание: в языке формул Power Query учитывается регистр.
-
Каждый шаг формулы запроса строится на основе одного из предыдущих шагов (ссылается на него по имени).
-
Результат шага формулы запроса выводится с помощью оператора in. Обычно последний шаг запроса используется как окончательный результат оператора in для набора данных.
Шаг 1. Открытие расширенного редактора
-
На вкладке ленты POWER QUERY нажмите кнопку Из других источников и выберите пункт Пустой запрос.
-
В редакторе запросов выберите команду Расширенный редактор.
-
Откроется окно Расширенный редактор.
Шаг 2. Определение исходного источника
В расширенном редакторе сделайте следующее:
-
Используйте оператор let, определяющий формулу Источник = Excel.CurrentWorkbook(). В результате источником данных станет таблица Excel. Дополнительные сведения о формуле Excel.CurrentWorkbook() см. в статье Excel.CurrentWorkbook.
-
Назначьте имя шага Источник результату оператора in.
let Source = Excel.CurrentWorkbook(){[Name="Orders"]}[Content] in Source
-
Сложный запрос будет выглядеть в расширенном редакторе следующим образом:
-
Вот как можно просмотреть результаты на листе:
-
Нажмите кнопку Готово.
-
На ленте редактора запросов нажмите кнопку Закрыть и загрузить.
-
На листе результат будет выглядеть вот так:
Шаг 3. Преобразование первой строки в заголовки
Чтобы преобразовать значения в столбце ProductName в текст, где первые буквы слов прописные, сначала нужно преобразовать первую строку, сделав ее значения заголовками столбцов. Для этого воспользуйтесь расширенным редактором.
-
Добавьте к шагам формулы запроса формулу #»Использовать первую строку в качестве заголовков» = Table.PromoteHeaders() и сошлитесь на «Источник» как на источник данных. Дополнительные сведения о формуле Table.PromoteHeaders() см. в статье Table.PromoteHeaders.
-
Назначьте имя шага #»Использовать первую строку в качестве заголовков» результату оператора in.
let Source = Excel.CurrentWorkbook(){[Name="Orders"]}[Content], #"First Row as Header" = Table.PromoteHeaders(Source) in #"First Row as Header"
На листе результат будет выглядеть вот так:
Шаг 4. Изменение каждого значения в столбце (замена первых букв в словах прописными)
Чтобы преобразовать каждое значение столбца ProductName, сделав первые буквы слов прописными, воспользуйтесь формулой Table.TransformColumns() и сошлитесь на шаг формулы запроса «Использовать первую строку в качестве заголовков». Для этого воспользуйтесь расширенным редактором.
-
Добавьте к шагам формулы запроса формулу #»Выполнена капитализация каждого слова» = Table.TransformColumns() и сошлитесь на шаг #»Использовать первую строку в качестве заголовков» как на источник данных. Дополнительные сведения о формуле Table.TransformColumns() см. в статье Table.TransformColumns.
-
Назначьте имя шага #»Выполнена капитализация каждого слова» результату оператора in.
let Source = Excel.CurrentWorkbook(){[Name="Orders"]}[Content], #"First Row as Header" = Table.PromoteHeaders(Source), #"Capitalized Each Word" = Table.TransformColumns(#"First Row as Header",{{"ProductName", Text.Proper}}) in #"Capitalized Each Word"
В окончательном результате каждое значение столбца ProductName будет изменено (первые буквы слов станут прописными). На листе это будет выглядеть так:
С помощью языка формул Power Query можно создавать простые и сложные запросы для обнаружения, объединения и уточнения данных. Дополнительные сведения о Power Query см. в статье Справка по Microsoft Power Query для Excel.
Нужна дополнительная помощь?
Это продолжение перевода книги Кен Пульс и Мигель Эскобар. Язык М для Power Query. Главы не являются независимыми, поэтому рекомендую читать последовательно.
Предыдущая глава Содержание Следующая глава
Пользовательский интерфейс Power Query позволяет выполнять огромное число операций. Но наверняка возникнут моменты, когда вам потребуется что-то сделать, что не встроено в интерфейс. Вот мы и добрались до языка программирования Power Query: M.
Хотя некоторые аспекты M могут быть довольно сложными, есть простой способ получить представление о языке, начав с формул в пользовательских столбцах. Поскольку Power Query был создан для профессионалов Excel, можно было ожидать, что его язык будет подобен языку формул Excel. К сожалению, это не так.
Рис. 17.1. Интерфейс создания пользовательского столбца
Скачать заметку в формате Word или pdf, примеры в формате архива
Создание пользовательских столбцов
Окно создания настраиваемого столбца содержит три важные части (см. 17.1):
- Имя столбца
- Доступные столбцы: здесь перечислены имена всех столбцов в запросе. Двойной щелчок любого элемента в этом поле помещает его в область формулы с правильным синтаксисом для ссылки на поле.
- Пользовательская формула столбца – место, где вы записываете формулу.
Некоторые функции, доступные в Excel, могут использоваться и здесь. Например, чтобы объединить два текстовых поля, постройте формулу следующим образом:
- Дважды щелкните Class в списке Доступные столбцы (или выделите строку Class и нажмите кнопку Вставить)
- Введите символ &
- Дважды щелкните столбец Account #2 в списке Доступные столбцы
Power Query построит формулу: =[Class]&[#"
Account #2"
]
Самое замечательное в использовании интерфейса двойного щелчка заключается в том, что для вас не имеет значения, что синтаксис Class и Account #2 должен обрабатываться по-разному. Этот специфический синтаксис объясняется в главе 19 и главе 20. Вы также можете выполнить все четыре арифметических действия: –, + , /, *. В то же время для возведения в степень нужно применить формулу: =Number.Power([Column1],[Column2]).
К сожалению, Power Query не имеет подсказок, чтобы выяснить, какие функции можно использовать. Но… в окне Настраиваемый столбец есть гиперссылка Сведения о формулах Power Query (см. рис. 17.1). Щелкнув на нее, вы попадете на страницу с подробным каталогом функций, правда, на английском языке. В отличие от Excel, но аналогично Power Pivot, функции Power Query не русифицированы.
Подводные камни формул на языке М
Power Query и Excel существенно различаются в том, как они обрабатывают входные данные.
Рис. 17.2. Различия Power Query и Excel в обработке данных
Чувствительность к регистру. Запомните, что в 99% случаев первая буква каждого слова в формуле на языке М – заглавная, а остальные – строчные. В то время как Excel не заботится, какие буквы вы используете и преобразует формулы в верхний регистр по умолчанию, Power Query просто возвращает ошибку.
База 0 против базы 1. Если бы вас спросили о номере позиции буквы x в слове Excel, вы сказали бы 2. Это логично, и так считает программа MS Excel. Но Power Query скажет, что буква x в слове Excel занимает позицию 1.
Преобразование типов данных. В Excel вы можете добавить единицу к дате, что изменит дату на один день. В Power Query, если дата отформатирована с типом Даты, необходимо использовать специальную формулу чтобы добавить к ней день. Если вы попытаетесь использовать ту же формулу для добавления дней к числу, Power Query вернет ошибку. Это означает, что перед использованием столбцов в формулах необходимо явно задавать в них тип данных.
В Excel вы можете объединить две ячейки вместе с помощью функции конкатенации &. Содержат ли ячейки текст или числа, не важно. Excel неявно преобразует их в текст, а затем объединяет вместе:
Рис. 17.3. Неявное преобразование данных в Excel: число и текст, преобразованные в текст
Создайте на основе двух первых столбцов Таблицы Excel запрос, а затем внутри Power Query создаете пользовательский столбец, используя формулу: =[Column1]&[Column2]:
Рис. 17.4. Power Query не может соединить число и текст вместе
Чтобы устранить эту проблему, необходимо сначала преобразовать тип данных Столбец1 в текст, а уже затем создать пользовательский столбец:
Рис. 17.5. Два текстовых столбца объединить можно
При явном преобразовании данных в столбце 1 в текстовое значение конкатенация будет работать так, как вы изначально предполагали:
На самом деле существует два способа работы с типами данных в Power Query:
- Установите тип данных для столбца, на который вы ссылаетесь, прежде чем использовать его в пользовательской функции.
- Используйте функцию преобразования типа данных, чтобы принудительно преобразовать входные данные в требуемый тип.
Функции преобразования типов данных
Существует несколько функций преобразования типов данных.
Преобразование в текст. Если вам нужно преобразовать значения в столбце в текст, можно использовать универсальную функцию Text.From(). Если же вы хотите подчеркнуть тип преобразуемых данных, также в вашем распоряжении есть: Date.ToText(), Time.ToText(), Number.ToText(). Имейте в виду, что Text.From() преобразует любой тип данных в текст, в то время как Date.ToText() не преобразует число в текст.
Даты. Данные, похожие на даты, могут поступать в формате чисел или текста. Для их преобразования есть две функции: Date.From() и Date.FromText(). Опять же, Date.From() справится с преобразованием в формат даты, как чисел, так и текста.
Время. Значения времени могут поступать как в виде чисел, так и в виде текста. Опять же, есть две функции для них: Time.From() и Time.FromText().
Длительность – это разница между двумя значениями даты/времени: Duration.From() и Duration.FromText().
Числа. Имеется универсальная функция Number.From() и несколько специальных. Для чисел из текста Number.FromText(), для десятичных чисел Decimal.From(), целых чисел Int64.From(), валюты Currency.From().
Сравнение текстовых функций Excel и Power Query
Если вы работали с текстовыми функциями Excel, то привыкли использовать их для извлечения элементов текста из данных. В Power Query текстовые функции работают иначе. Рассмотрим пять наиболее часто используемых текстовых функций Excel, и их аналоги в Power Query. Откройте файл 5 Useful Text Functions.xlsx. Каждый из примеров в этом разделе начинается с набора данных:
Рис. 17.6. Пример данных
В августе 2015 года команда Power Query добавила возможность извлечения первого, последнего и ряда символов на вкладку Преобразование. Несмотря на это, ниже рассматривается процесс извлечения текста с помощью языка M, что позволит глубже познакомиться с языком, и создавать более надежные решения, чем те, что могут быть созданы с помощью команд пользовательского интерфейса.
Итак, что поместить данные, представленные на рис. 17.6, в Power Query, кликните на любой ячейке в диапазоне А1:В8 –> Данные –> Из таблицы/диапазоне. Подтвердите создание Таблицы с заголовком. В окне редактора Power Query переименуйте запрос pqLeft. Перейдите на вкладку Добавление столбца –> Настраиваемый столбец. Назовите новый столбец pqLeft(x,4). Введите формулу: =LEFT([Слово],4). Вроде бы, это должно сработать:
Рис. 17.7. Power Query не находит синтаксических ошибок
Однако, после нажатия Ok, появляется ошибка:
Рис. 17.8. Формула =LEFT([Слово],4) не работает
В Power Query используется иной синтаксис =Text.Start(text,num_chars). Отредактируйте формулу. В области ПРИМЕНЕННЫЕ ШАГИ кликните на шестеренку справа от строки Добавлен пользовательский столбец, и в окне Настраиваемый столбец введите формулу: =Text.Start([Слово],4). Не забывайте, что формулы в Power Query чувствительны к регистру: Text.start и TEXT.START вернут ошибку. Нажмите Ok:
Рис. 17.9. Функции ЛЕВСИМВ() в Excel соответствует Text.Start() в Power Query
Теперь вы можете завершить запрос: Главная –> стрелочка вниз возле кнопки Закрыть и загрузить –> Закрыть и загрузить в… –> Только создать подключение.
Никогда не используйте имя функции Excel в качестве имени запроса Power Query. Если бы вы назвали запрос ЛЕВСИМВ, вы бы получили ошибки в формулах Excel исходной Таблицы. Имена таблиц обрабатываются перед функциями.
Рис. 17.10. Не давайте запросам имена, совпадающие с именами функций Excel; чтобы увеличить изображение кликните на нем правой кнопкой мыши и выберите Открыть картинку в новой вкладке
Рис. 17.11. Соответствие текстовых функций Excel и Power Query
Первые две функции из таблицы аналогичны только что рассмотренной Text.Start(). Использование двух последних функций требует небольшой коррекции в связи с тем, что Power Query за точку начала отсчета берет ноль. Также обратите внимание на следующее различие: аргумент искомый текст является первым в функции НАЙТИ(), и – вторым в функции Text.PositionOf().
Аналог функции НАЙТИ
В файле 5 Useful Text Functions.xlsx перейдите на лист FIND. Кликните на одной из ячеек таблицы, пройдите по меню Данные –> Из таблицы/диапазона. В окне редактора Power Query переименуйте запрос pqFind. Перейдите на вкладку Добавление столбца –> Настраиваемый столбец. Назовите новый столбец pqFind(x,"
o"
). Введите формулу: =Text.PositionOf([Word],"
o"
). Нажмите Ok.
Рис. 17.12. Результат не вполне согласуются с Excel
Возвращаемые значения, следуют базовому правилу. В первой строке буква F идет под номером 0. Измените формулу, добавив 1: =Text.PositionOf([Word],"
o"
)+1.
Рис. 17.13. Есть совпадение с Excel, а вместо ошибок выводится значение ноль
Аналог функции ПСТР
В файле 5 Useful Text Functions.xlsx перейдите на лист MID. Кликните на одной из ячеек таблицы, пройдите по меню Данные –> Из таблицы/диапазона. В окне редактора Power Query переименуйте запрос pqMid. Перейдите на вкладку Добавление столбца –> Настраиваемый столбец. Назовите новый столбец pqMid(x,5,4). Введите формулу: =Text.Range([Word],5,4). Нажмите Ok. Результат не соответствует ожиданиям:
Рис. 17.14. Несколько результатов адекватно, но почему не все?
Это немного удивляет. Вы ожидали, что результат не будет соответствовать Excel. Но что число ошибок будет таким большим!? Для начала исправим положение начального символа. На примере Bookkeeper вы ожидали увидеть keep, а появился eepe. Поскольку первый символ в слове имеет номер ноль, вам нужно исправить формулу на =Text.Range([Word],5-1,4).
Рис. 17.15. Уже лучше, но всё еще ошибки в двух последних строках
Одна из замечательных особенностей функции Mid (ПСТР) Excel заключается в том, что вас не волнует, сколько символов осталось в текстовой строке. Если конечный параметр больше, чем количество оставшихся символов, он просто вернет все оставшиеся символы. Не таков Power Query. Вам нужно дополнить формулу проверкой: вы хотите вернуть четыре символа или меньше, до конца текстовой строки. Для этих целей подойдет функция List.Min (подробнее о ней вы узнаете из главы 20). Вместо того, чтобы пытаться встроить эту функцию в формулу столбца pqMid(x,5,4), создайте еще один пользовательский столбец с формулой =List.Min({Text.Length([Word])-(5-1),4}).
Рис. 17.16. В отдельном столбце определено количество оставшихся символов
Несколько слов о том, как работает формула:
- Text.Length([Word])-(5-1) подсчитывает длину слова в столбце Word и вычитает начальную позицию. Вы использовали выражение (5-1), чтобы подчеркнуть, что хотели взять пятый символ, но исправили формулу для базы 0 (можно использовать и 4).
- Последняя четверка в формуле – максимальное количество символов, которые вы хотите вернуть
- Для того, чтобы использовать их в функции List.Min() они должны быть окружены фигурными скобками и разделены запятыми.
Теперь вы можете отредактировать формулу в столбце pqMid(x,5,4) =Text.Range([Word],5-1, List.Min({Text.Length([Word])-(5-1),4}))
Рис. 17.17. Всё верно, кроме последней строки
Теперь вы можете удалить вспомогательный столбце Пользовательская и загрузить запрос в Таблицу на лист Excel. А как же ошибка в последней строке. Не страшно. Потому что ошибки в Power Query будут показываться в Excel, как пустые ячейки:
Рис. 17.18. Ошибки исчезают при загрузке в Таблицу
Очень жаль, что не все функции в Power Query эквивалентны функциям в Excel. Особенно учитывая, что Power Query – это инструмент для пользователей Excel. Надеемся, что это изменится в будущих версиях. Мы хотели бы видеть новую библиотеку функций Power Query, которые позволяют переносить существующие знания из Excel в Power Query без необходимости изучать новые функции и новый синтаксис.
– Мммм, Power Query!
Вот такие слова часто раздаются на курсах и семинарах по Excel и Power BI. Что такое Power Query? Это инструмент, который данные любого вида и из любых источников приводит в формат базы данных. Если вы не знаете, что такое Power Query, срочно посмотрите видео на нашем сайте и затем возвращайтесь к этой статье )
Power Query – это запросы, которые может создавать аналитик одной мышкой, указывая системе, куда обратиться и какие действия выполнить. Очень похоже на макросы. Только команды записываются на языке М и больше похожи на формулы Excel: там также есть знак равно, название функции и в скобочках аргументы. Power Query не требует знаний и навыков программиста: код на языке M генерируется автоматически.
Простыми щелчками мыши вы можете творить чудеса и решать почти все задачи, стоящие перед вами. Но иногда бывают такие случаи, когда запрос нужно все-таки поправить. А еще реже – написать полностью вручную. И чтобы развязать вам руки в работе с запросами Power Query, предлагаем вам краткое введение в М на русском языке.
Полное описание языка M доступно на сайте Microsoft, но пока только на английском языке.
Как в Power Query ввести формулу на языке M
Вы можете писать формулы на языке M в строке формул Power Query, расширенном редакторе или при добавлении настраиваемых (пользовательских) столбцов.
Строка формул
Для отображения строки формул перейдите в меню редактора Просмотр и выберите Строка формул.
Чтобы создать новый шаг запроса с помощью строки формул, нажмите кнопку fx.
Расширенный редактор
Расширенный редактор запросов в Power Query позволяет полностью написать запрос на языке M, без использования стандартного функционала. Перейдите в меню Просмотр -> Расширенный редактор.
На рисунке — пример кода запроса, который автоматически сгенерирован Power Query на языке M, по выполненным шагам обращения к данным.
Чтобы создать новый пустой запрос, в меню Excel перейдите на вкладку Данные -> Получить данные -> Из других источников -> Пустой запрос.
Добавление настраиваемого столбца
Для создания настраиваемого (пользовательского) столбца перейдите в меню Добавить столбец -> Настраиваемый столбец. В открывшемся окне введите формулу столбца на языке M.
Как устроен язык M
Если вы откроете уже вами созданный запрос в расширенном редакторе, то увидите код, заключенный в конструкции let … in … На самом деле каждый запрос Power Query является одним выражением M, а оператор Let разделяет это выражение на несколько меньших.
Давайте разберемся, как устроен язык М. В языке М есть значения и выражения.
Значения — это значения, такие как число 1 или текстовая строка, или более сложные объекты, такие как таблицы. Также значения могут быть записаны как выражения, но при этом выражениями они не являются, например, 1+1 возвращает значение 2.
Выражение — это формула, используемая для построения значений. Выражение может быть сформировано с использованием синтаксических конструкций. Пример:
if 2 > 1 then 2 else 1
Ниже приведены типы значений, доступных в М:
- Простые значения (primitive value) – числовые, логические, текст или null. Например:
123 — число,
true — логическое значение,
null – отсутствие данных, null
- Список (list) – упорядоченная последовательность значений. Фигурные скобки { и } обозначают начало и конец списка. Пример:
{1, 2, 3} – список из чисел.
- Запись (record) – это упорядоченная последовательность полей, где каждое поле имеет имя и одно значение (любого типа). Пример:
[ A = 1, B = 2, C = 3 ]
- Таблица (table) – набор значений в виде строк и именованных столбцов. Нет определенного синтаксиса для создания таблицы, ее можно создать или обратиться к ней с помощью нескольких стандартных функций.
Например:
#table( {"A", "B"}, { {1, 2}, {3, 4} } )
Будет создана таблица:
- Функция (function) преобразует набор входящих значений в одно результирующее. Функция записывается путем перечисления параметров функции в круглых скобках ( ), за которыми следует знак перехода => далее указывают выражение, определяющее функцию.
(x, y) => (x + y) / 2
Внимание! Язык М чувствителен к регистру. Так, например, формула Excel.CurrentWorkbook() сработает, а Excel.currentworkbook() – нет, потому что написана без учета регистра.
Как записать комментарии в тексте запроса
Комментарии в одну строку начинаются с двойной черты //
Комментарии на нескольких строках начинаются и заканчиваются символами /* и */
Стандартные формулы языка М: справка в редакторе Power Query
Нажмите кнопку fx в строке формул и введите название формулы без скобок (). Появится окно со справкой по этой формуле. Ниже приведен пример справки по формуле Excel.Workbook
Весь перечень формул можно вывести, написав в строке формул = #shared
Появится список формул. Если щелкнуть по формуле, в нижней части экрана появится справочная информация. Из списка можно выбрать нужную формулу и тут же добавить ее в запрос.
Идентификаторы, операторы и ключевые слова
Вы можете указывать имена для обозначения значений – идентификаторы. Если в идентификаторе есть пробел, то он указывается с помощью символа # и в кавычках, например:
[ #"2016 Sales" = 1000,
#"2017 Sales" = 1100,
#"Total Sales" = #"2016 Sales" + #"2017 Sales" ]
Для обращения к данным записей (record) используются идентификаторы с квадратными скобками [ ]. Пример:
[ Data = [ Base Line = 100, Rate = 1.8 ],
Progression = Data[Base Line] * Data[Rate] ]
В языке M есть зарезервированные последовательности символов, которые нельзя использовать как операторы, это:
and as each else error false if in is let meta not otherwise or section shared then true try type #binary #date #datetime #datetimezone #duration #infinity #nan #sections #shared #table #time
Также есть стандартные операторы и знаки пунктуации:
, ; = < <= > >= <> + - * / & ( ) [ ] { } @ ! ? => .. ...
Логические выражения if
Логические выражения записываются как if…then…else
Например:
if [Sales] > 1000 then "более 1000" else if [Sales] > 500 then "более 500" else "500 или меньше"
Оператор let
Выражение let позволяет вычислять набор значений, назначить имена, а затем используется в следующем выражении, которое записывается в in.
Например:
let
Sales2017 =
[ Year = 2017, FirstHalf = 1000, SecondHalf = 1100,
Total = FirstHalf + SecondHalf ], // 2100
Sales2018 =
[ Year = 2018, FirstHalf = 1200, SecondHalf = 1300,
Total = FirstHalf + SecondHalf ] // 2500
in
Sales2017[Total] + Sales2018[Total] // 4600
Для сложных запросов могут использоваться вложения let, что позволяет сделать запрос более читаемым.
Например:
let
AreaСalculation = (x, y) =>
let
Area = x * y,
DoubleArea = Area * 2
in
DoubleArea
in
AreaСalculation
Это введение в правила языка M. Получается легкая смесь формул Excel и программирования. На самом деле с Excel больше общего, чем кажется вначале. Например, обращение к столбцу Base Line в записи Data, записанное как:
= Data[Base Line]
напоминает синтаксис Excel, когда вы ссылаетесь на ячейку A1 на другом листе. Формула будет похожей:
=Лист!A1
Отличие только в том, что после названия листа стоит восклицательный знак. И в том, что в Power Query, или в M мы обычно ссылаемся не на отдельную ячейку, а на столбец целиком. В остальном запись идентична: таблица аналогична листу, столбец – ячейке.
Если рассматривать M в таком ключе, то многие команды становятся интуитивно понятными, что мы с вами дальше и увидим.
Смотрите продолжение в следующей статье:
На чтение 17 мин. Просмотров 64.4k.
Есть одна вещь, которая волнует всех — как сэкономить больше времени и работать с умом.
Что ж, я уже давал много приемов и трюков 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.
Я надеюсь, что приведенные выше советы вдохновляют вас использовать его все больше и больше.
Не забудьте поделиться своими мнениями со мной в разделе комментариев. И, пожалуйста, не забудьте поделиться этой информацией со своими друзьями, я уверен, что они это оценят.