Json запросы в excel

Вы можете импортировать данные в Excel из самых разных источников данных, и в следующих разделах показано, как это сделать. Дополнительные сведения о том, что делать с данными после их импорта, см. в статье Как данные передаются через Excel.

Запрос можно создать из таблицы Excel, именованного диапазона или динамического массива в текущей книге. Если выбранные данные являются простым диапазоном, они преобразуются в таблицу. Для импорта динамических массивов требуется подписка На Microsoft 365. Дополнительные сведения о динамических массивах см. в статье Динамические формулы массива и поведение массива, разлитого массива.

  1. Выберите любую ячейку в диапазоне данных.

  2. Выберите > данныхиз таблицы или диапазона.

    Эта команда также доступна в > данныхиз других источников > из таблицы или диапазона.

  3. При появлении запроса в диалоговом окне Создание таблицы можно нажать кнопку Выбор диапазона , чтобы выбрать определенный диапазон для использования в качестве источника данных.

    Диалоговое окно "Из таблицы"

  4. Если таблица или диапазон данных содержат заголовки столбцов, выберите Моя таблица содержит заголовки. Ячейки заголовков используются для определения имен столбцов в запросе.

  5. Нажмите кнопку ОК.

Дополнительные сведения см. в разделе Импорт из таблицы Excel.

  1. Выберите Data > Get Data > from File > from Excel Workbook (Получить > данныхиз книги Excel). 

  2. В диалоговом окне Обзор Excel найдите или введите путь к файлу, к которому требуется выполнить запрос.

  3. Нажмите кнопку Открыть.

Если в исходной книге есть именованные диапазоны, их имена будут доступны как наборы данных.

Дополнительные сведения о дополнительных параметрах соединителя см. в разделе Книга Excel (docs.com).

В следующей процедуре показаны основные шаги. Дополнительные сведения см. в статье Импорт и экспорт текстовых файлов (.txt или .csv).

  1. Выберите Data > Get Data > from File > From Text/CSV

  2. В диалоговом окне Обзор разделенных запятыми значений найдите или введите путь к файлу, к которому требуется выполнить запрос.

  3. Нажмите кнопку Открыть.

Примечание: Если вы импортируете данные из CSV-файла, Power Query автоматически определит разделители столбцов, включая заголовки и типы. Например, при импорте CSV-файла, представленного ниже, Power Query автоматически будет использовать первую строку в качестве заголовков столбцов и изменит тип данных каждого столбца.

Пример CSV-файла

Изображение CSV-файла

Power Query автоматически изменяет тип данных каждого столбца:

  • Тип поля «Код заказа» изменяется на число

  • Тип поля «Дата заказа» изменяется на дату

  • Тип поля «Категория» остается текстом (тип столбца, используемый по умолчанию)

  • Тип поля «Название товара» остается текстом (тип столбца, используемый по умолчанию)

  • Тип поля «Продажи» изменяется на число

Дополнительные сведения о расширенных параметрах соединителя см. в разделе Text/CSV (docs.com).

В следующей процедуре показаны основные шаги импорта данных. Более подробное описание см. в разделе Импорт XML-данных.

  1. Выберите Данные > Получить > данныхиз файла > из XML

  2. В диалоговом окне Обзор из XML найдите или введите URL-адрес файла для импорта или ссылки на файл.

  3. Нажмите кнопку Открыть.

После успешного подключения используйте панель Навигатор для просмотра и просмотра коллекций элементов в XML-файле в табличной форме.

Дополнительные сведения о дополнительных параметрах соединителя см. в разделе XML (docs.com).

  1. Выберите Data > Get Data > from File > from JSON (Получить > данных из файла > из JSON). Откроется диалоговое окно Импорт данных .

  2. Найдите JSON-файл и нажмите кнопку Открыть.

Дополнительные сведения о дополнительных параметрах соединителя см. в статье JSON (docs.com).

Важно   При попытке импортировать PDF-файл может появиться следующее сообщение в формате PDF: «Этот соединитель требует установки одного или нескольких дополнительных компонентов, прежде чем его можно будет использовать». Соединитель PDF должен быть установлен на компьютере платформа .NET Framework 4.5 или более поздней версии. Последние платформа .NET Framework можно скачатьздесь.

  1. Выберите Данные > получить > данныхиз файла > из PDF.

  2. Выберите PDF-файл и нажмите кнопку Открыть. В диалоговом окне Навигатор откроется файл PDF и отображаются доступные таблицы.

    Диалоговое окно "Навигатор" для импорта данных PDF

  3. Выберите таблицы, которые требуется импортировать, а затем выполните одно из следующих действий:

    • Чтобы просмотреть данные непосредственно в Excel, выберите Загрузить > Загрузить или, чтобы открыть диалоговое окно Импорт , выберите Загрузить > Загрузить в.

    • Чтобы сначала работать с данными в Power Query, выберите Преобразовать данные.

Дополнительные сведения о дополнительных параметрах соединителя см. в разделе PDF (docs.com).

Вы можете импортировать данные из нескольких файлов с похожей схемой и форматом из папки. Затем можно добавить данные в одну таблицу.

  1. Выберите Данные > Получить данные > из файла > из папки.

  2. В диалоговом окне Обзор найдите папку и нажмите кнопку Открыть.

  3. Подробные инструкции см. в статье Импорт данных из папки с несколькими файлами.

Дополнительные сведения о дополнительных параметрах соединителя см. в разделе Папка (docs.com).

Вы можете импортировать данные из нескольких файлов с похожей схемой и форматом из библиотеки SharePoint. Затем можно добавить данные в одну таблицу.

  1. Выберите Data > Get Data > from File > from SharePoint Folder (Получить > данныхиз папки SharePoint).

  2. В диалоговом окне Папка SharePoint введите корневой URL-адрес сайта SharePoint, не включая ссылки на библиотеку, а затем перейдите к библиотеке.

  3. Подробные инструкции см. в статье Импорт данных из папки с несколькими файлами.

Дополнительные сведения о дополнительных параметрах соединителя см. в статье Папка SharePoint (docs.com).

  1. Выберите Data > Get Data > From Database > From SQL Server Database (Получить > данных из базы данных SQL Server). 

  2. В диалоговом окне База данных Microsoft SQL укажите SQL Server, к которому нужно подключиться, в поле Имя сервера. При необходимости вы также можете указать имя базы данных.

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса на ее языке.

    Диалоговое окно подключения к базе данных SQL Server с помощью Power Query

  4. Нажмите кнопку ОК.

  5. Выберите режим проверки подлинности для подключения к базе данных SQL Server.

    Учетные данные для подключения к SQL Server


    • Windows 
         Это выбор по умолчанию. Выберите это значение, если вы хотите подключаться, используя проверку подлинности Windows.

    • Базы данных Выберите этот параметр, если вы хотите подключиться с помощью SQL Server проверки подлинности. Затем укажите имя пользователя и пароль для подключения к экземпляру SQL Server.

  6. По умолчанию установлен флажок Шифрование соединения, то есть Power Query подключается к базе данных через зашифрованное соединение. Если вы не хотите использовать зашифрованное соединение, снимите этот флажок, а затем нажмите кнопку Подключить.

    Если подключение к SQL Server не установлено через зашифрованное соединение, Power Query предлагает подключиться, используя незашифрованное соединение. Нажмите кнопку ОК в окне сообщения, чтобы использовать незашифрованное соединение.

Дополнительные сведения о дополнительных параметрах соединителя см. в разделе база данных SQL Server (docs.com).

  1. Выберите Данные > Получить данные > из базы данных > из базы данных Microsoft Access

  2. В диалоговом окне Импорт данных найдите и найдите файл базы данных Access (ACCDB). 

  3. Выберите файл и нажмите кнопку Открыть. Откроется диалоговое окно Навигатор .

  4. Выберите таблицу или запрос в левой области, чтобы просмотреть данные в правой области.

  5. Если у вас много таблиц и запросов, используйте поле Поиска , чтобы найти объект, или используйте параметры отображения вместе с кнопкой Обновить , чтобы отфильтровать список.

  6. Выберите Загрузить или преобразовать.

Дополнительные сведения о дополнительных параметрах соединителя см. в статье База данных Access (docs.com).

Примечание    При использовании книги, подключенной к базе данных SQL Server Analysis Services, могут потребоваться дополнительные сведения для ответов на конкретные вопросы о продукте, например справочные сведения о многомерных выражениях или процедуры конфигурации для сервера OLAP.

  1. Выберите Data > Get External Data > from Database > from Analysis Services . Откроется первая страница мастера подключения к данным . Его название — Подключение к серверу базы данных.

    Экран мастера подключения к данным 1

  2. В поле Имя сервера введите имя сервера базы данных OLAP.

    Совет: Если известно имя автономного файла куба, к которому требуется подключиться, можно ввести полный путь к файлу, имя файла и расширение.

  3. В разделе Учетные данные входа выполните одно из следующих действий, а затем нажмите кнопку Далее.

    • Чтобы использовать текущее имя пользователя и пароль Windows, щелкните Использовать проверку подлинности Windows.

    • Чтобы указать имя пользователя и пароль для доступа к базе данных, выберите вариант Использовать следующие имя пользователя и пароль и введите соответствующие данные в поля Имя пользователя и Пароль.

      Примечание по безопасности

      • Используйте надежные пароли, состоящие из букв в верхнем и нижнем регистре, цифр и символов. В ненадежных паролях не используются сочетания таких элементов. Например, Y6dh!et5 — надежный пароль, а House27 — ненадежный пароль. Пароли должны содержать 8 или более символов. Лучше всего использовать парольную фразу длиной не менее 14 знаков.

      • Очень важно запомнить свой пароль. Если вы забудете пароль, корпорация Майкрософт не сможет его восстановить. Все записанные пароли следует хранить в надежном месте отдельно от сведений, для защиты которых они предназначены.

  4. Нажмите кнопку Далее, чтобы перейти ко второму экрану мастера. Его название — Select Database and Table (Выбор базы данных и таблицы).

    Экран мастера подключения к данным 2

    Чтобы подключиться к определенному файлу куба в базе данных, убедитесь, что выбран параметр Подключиться к определенному кубу или таблице , а затем выберите куб из списка.

  5. В поле Выберите базу данных, содержащую нужные данные, выберите базу данных и нажмите кнопку Далее.

  6. Нажмите кнопку Далее , чтобы перейти к третьему экрану мастера. Его озаглавить Сохранить файл подключения к данным и Готово.

    Экран мастера подключения к данным 3

  7. В поле Имя файла при необходимости проверьте имя файла по умолчанию (необязательно).

  8. Нажмите кнопку Обзор , чтобы изменить расположение файла по умолчанию для моих источников данных, или проверьте наличие существующих имен файлов.

  9. В полях Описание, Понятное имя и Ключевые слова поиска введите описание файла, понятное имя и распространенные поисковые слова (все они являются необязательными).

  10. Чтобы убедиться, что файл подключения используется при обновлении сводной таблицы, щелкните Всегда пытаться использовать этот файл для обновления данных.

    Если установить этот флажок, обновления файла подключения всегда будут использоваться всеми книгами, которые используют этот файл подключения.

  11. Вы можете указать способ доступа к сводной таблице, если книга сохраняется в службы Excel и открывается с помощью службы Excel. 

    Примечание: Параметр проверки подлинности используется только службы Excel, а не Microsoft Office Excel. Если вы хотите убедиться, что доступ к тем же данным осуществляется при открытии книги в Excel или службы Excel, убедитесь, что параметр проверки подлинности в Excel совпадает.

    Выберите Параметры проверки подлинности и выберите один из следующих параметров для входа в источник данных: 

    • Проверка подлинности Windows.       Выберите этот параметр, чтобы использовать имя пользователя и пароль Windows текущего пользователя. Это самый безопасный метод, но он может повлиять на производительность при наличии большого количества пользователей.

    • SSO   Выберите этот параметр, чтобы использовать единый вход, а затем введите соответствующую строку идентификации в текстовое поле Идентификатор единого входа. Администратор сайта может настроить сайт SharePoint для использования базы данных единого входа, где можно хранить имя пользователя и пароль. Этот метод может быть наиболее эффективным при наличии большого числа пользователей.

    • Ни один   Выберите этот параметр, чтобы сохранить имя пользователя и пароль в файле подключения.

      Важно: Не рекомендуется сохранять сведения о входе при подключении к источникам данных. Эта информация может храниться в виде обычного текста, и злоумышленники смогут получить с ее помощью доступ к источнику данных.

  12. Нажмите кнопку ОК.

  13. Нажмите кнопку Готово , чтобы закрыть мастер подключения к данным. Откроется диалоговое окно Импорт данных.

    Импорт данных

  14. Выберите способ импорта данных, а затем нажмите кнопку ОК. Для получения дополнительных сведений об использовании этого диалогового окна выберите вопросительный знак (?).

Вы можете создать динамическое соединение между книгой Excel и сервером базы данных OLAP SQL Server Analysis Services, а затем обновлять это подключение при изменении данных. Вы можете подключиться к определенному автономному файлу куба, если он был создан на сервере базы данных. Вы также можете импортировать данные в Excel в виде таблицы или отчета сводной таблицы.

  1. Выберите Data > Get Data > From Database > From SQL Server Analysis Services Database (Import)). 

  2. Введите имя сервера и нажмите кнопку ОК.

  3. В области Навигатор выберите базу данных, а затем выберите куб или таблицы, которые требуется подключить.

  4. Нажмите кнопку Загрузить, чтобы загрузить выбранную таблицу на лист, или нажмите кнопку Изменить, чтобы выполнить дополнительные фильтры данных и преобразования в Редактор Power Query перед загрузкой.

  1. Выберите Data > Get Data > from Database > From Oracle Database Database (Получить > данныхиз базы данных Oracle).

  2. В диалоговом окне База данных Oracle в поле Имя сервера укажите сервер Oracle, к которому нужно подключиться. Если требуется идентификатор безопасности, его можно указать в виде «Имя_сервера/идентификатор безопасности».

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса к собственной базе данных.

  4. Нажмите кнопку ОК.

  5. Если серверу Oracle требуются учетные данные пользователя базы данных:

    1. В диалоговом окне Доступ к базе данных введите имя пользователя и пароль.

    2. Нажмите кнопку Подключить.

Дополнительные сведения о дополнительных параметрах соединителя см. в статье База данных Oracle (docs.com).

Предупреждение: 

  • Прежде чем подключиться к базе данных IBM DB2, на компьютере должен быть установлен драйвер IBM DB2 Data Server (минимальное требование — пакет драйвера сервера данных IBM (драйвер DS)). Выберите драйвер, разрядность которого соответствует установленной версии Power Query (32-разрядный или 64-разрядный).

  • Существуют известные проблемы при установке драйвера IBM DB2 Data Server в Windows 8. Если вы используете Windows 8 и хотите подключаться к IBM DB2 с помощью Power Query, вам нужно выполнить дополнительные действия по установке. Дополнительные сведения о драйвере сервера данных IBM DB2 см. в Windows 8.

  1. Выберите Данные > Получить > данныхиз базы данных > из базы данных IBM DB2

  2. В диалоговом окне База данных IBM DB2 в поле Имя сервера укажите сервер базы данных IBM DB2, к которому нужно подключиться.

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса к собственной базе данных.

  4. Нажмите кнопку ОК.

  5. Если для сервера IBM DB2 требуются учетные данные пользователя базы данных:

    1. В диалоговом окне Доступ к базе данных введите имя пользователя и пароль.

    2. Нажмите кнопку Подключить.

Дополнительные сведения о дополнительных параметрах соединителя см. в статье База данных IBM DB2 (docs.com).

Примечание: Если появляется сообщение «Этот соединитель требует установки одного или нескольких дополнительных компонентов, прежде чем его можно будет использовать».», необходимо скачать соответствующий драйвер ODBC для MySQL на устройство Windows отсюда. Дополнительные сведения см. в разделе Соединители MySQL.

  1. Выберите Данные > Получить > данныхиз базы данных > из базы данных MySQL

  2. В диалоговом окне База данных MySQL в поле Имя сервера укажите сервер базы данных MySQL для подключения.

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса к собственной базе данных.

  4. Нажмите кнопку ОК.

  5. Если серверу MySQL требуются учетные данные пользователя базы данных:

    1. В диалоговом окне Доступ к базе данных введите имя пользователя и пароль.

    2. Нажмите кнопку Подключить.

Дополнительные сведения о дополнительных параметрах соединителя см. в разделе База данных MySQL (docs.com).

Примечание: Прежде чем подключиться к базе данных PostgreSQL в Power Query, на компьютере должен быть установлен поставщик данных Ngpsql для PostgreSQL. Выберите драйвер, соответствующий вашей версии Office (32-разрядная или 64-разрядная). Дополнительные сведения см. в разделе Какая версия Office используется? . Кроме того, убедитесь, что в конфигурации компьютера зарегистрирован поставщик, соответствующий последней версии .NET на вашем устройстве.

  1. Выберите Data > Get Data > From Database > From PostgreSQL Database (Получить > данных из базы данных PostgreSQL). 

  2. В диалоговом окне База данных PostgreSQL укажите сервер базы данных PostgreSQL, к которому нужно подключиться, в разделе Имя сервера .

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса к собственной базе данных.

  4. Нажмите кнопку ОК.

  5. Если для сервера PostgreSQL требуются учетные данные базы данных:

    1. В диалоговом окне Доступ к базе данных введите имя пользователя и пароль.

    2. Нажмите Подключиться.

Дополнительные сведения о дополнительных параметрах соединителя см. в разделе PostgreSQL (docs.com).

Примечание: Прежде чем подключиться к базе данных SAP SQL Anywhere, на компьютере должен быть установлен драйвер SAP SQL Anywhere . Выберите драйвер, соответствующий установке Excel (32-разрядная или 64-разрядная версия).

  1. Выберите Data > Get Data > From Database > From Sybase Database (Получить > данных из базы данных Sybase). 

  2. В диалоговом окне База данных Sybase укажите сервер Sybase для подключения в поле Имя сервера . При необходимости вы также можете указать имя базы данных.

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса к собственной базе данных.

  4. Нажмите кнопку ОК.

  5. По умолчанию установлен флажок Шифровать подключение, чтобы Power Query подключался к базе данных с помощью простого зашифрованного подключения.

  6. Выберите Подключиться.

Дополнительные сведения см. в статье База данных Sybase (docs.com).

  1. Выберите Data > Get Data > From Database > From Teradata Database (Получить данные > из базы данных Teradata).

  2. В диалоговом окне База данных Teradata в поле Имя сервера укажите сервер Teradata для подключения.

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса к собственной базе данных.

  4. Нажмите кнопку ОК.

  5. Если серверу Teradata требуются учетные данные пользователя базы данных:

    1. В диалоговом окне Доступ к базе данных введите имя пользователя и пароль.

    2. Нажмите кнопку Сохранить.

Дополнительные сведения см. в статье База данных Terabase (docs.com).

Примечания: 

  • Эта функция доступна в Excel для Windows только при наличии Office 2019 или более поздней версии или подписки на Microsoft 365. Если вы являетесь подписчиком Microsoft 365, убедитесь, что у вас установлена последняя версия Office.

  • Для подключения к базе данных SAP HANA с помощью Power Query необходимо установить драйвер ODBC SAP HANA. Выберите драйвер, разрядность которого соответствует установленной версии Power Query (32-разрядный или 64-разрядный).

  • Для входа на веб-сайт и скачивания драйверов потребуется учетная запись SAP. При наличии вопросов обратитесь к администратору SAP вашей организации.

Чтобы подключиться к базе данных SAP HANA:

  1. Выберите Данные > Создать запрос > Из базы данных > Из базы данных SAP HANA.

  2. В диалоговом окне База данных SAP HANA укажите сервер, к которому вы хотите подключиться. Имя сервера должно иметь формат имя_сервера:порт.

    Диалоговое окно базы данных SAP HANA

  3. При необходимости, если вы хотите импортировать данные с помощью собственного запроса к базе данных, выберите Дополнительные параметры и в поле Инструкция SQL введите запрос.

  4. Нажмите кнопку ОК.

  5. Если для сервера SAP HANA требуются учетные данные пользователя базы данных, в диалоговом окне Доступ к базе данных SAP HANA сделайте следующее:

    1. Откройте вкладку База данных и введите имя пользователя и пароль.

    2. Нажмите кнопку Подключить

Дополнительные сведения о дополнительных параметрах соединителя см. в статье База данных SAP HANA (docs.com).

база данных Azure SQL — это высокопроизводительная, полностью управляемая масштабируемая реляционная база данных, созданная для облака и используемая для критически важных приложений. Дополнительные сведения см. в статье Что такое Azure SQL? (docs.com).

  1. Выберите Data > Get Data > From Azure > From Azure SQL Database (Получить > данныеиз базы данных Azure SQL).

  2. В диалоговом окне База данных Microsoft SQL укажите SQL Server, к которому нужно подключиться, в поле Имя сервера. При необходимости вы также можете указать имя базы данных.

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса на ее языке.

    Диалоговое окно подключения к базе данных SQL Server с помощью Power Query

  4. Нажмите кнопку ОК.

  5. Выберите режим проверки подлинности для подключения к базе данных SQL Server.

    Учетные данные для подключения к SQL Server


    • Windows 
         Это выбор по умолчанию. Выберите это значение, если вы хотите подключаться, используя проверку подлинности Windows.

    • Базы данных Выберите этот параметр, если вы хотите подключиться с помощью SQL Server проверки подлинности. Затем укажите имя пользователя и пароль для подключения к экземпляру SQL Server.

  6. По умолчанию установлен флажок Шифрование соединения, то есть Power Query подключается к базе данных через зашифрованное соединение. Если вы не хотите использовать зашифрованное соединение, снимите этот флажок, а затем нажмите кнопку Подключить.

    Если подключение к SQL Server не установлено через зашифрованное соединение, Power Query предлагает подключиться, используя незашифрованное соединение. Нажмите кнопку ОК в окне сообщения, чтобы использовать незашифрованное соединение.

Дополнительные сведения о дополнительных параметрах соединителя см. в разделе база данных Azure SQL (docs.com).

Azure Synapse Analytics объединяет средства больших данных и реляционные запросы с помощью Apache Spark для подключения к службам данных Azure и Power Platform. Вы можете загрузить миллионы строк в течение всего времени. Затем можно работать с табличными данными, используя знакомый синтаксис SQL для запросов. Дополнительные сведения см. в статье Что такое аналитика Azure Synapse (docs.com).

  1. Выберите Data > Get Data > From Azure > From Azure Synapse Analytics.

  2. В диалоговом окне База данных Microsoft SQL укажите SQL Server, к которому нужно подключиться, в поле Имя сервера. При необходимости вы также можете указать имя базы данных.

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса на ее языке.

    Диалоговое окно подключения к базе данных SQL Server с помощью Power Query

  4. Нажмите кнопку ОК.

  5. Выберите режим проверки подлинности для подключения к базе данных SQL Server.

    Учетные данные для подключения к SQL Server


    • Windows 
         Это выбор по умолчанию. Выберите это значение, если вы хотите подключаться, используя проверку подлинности Windows.

    • Базы данных Выберите этот параметр, если вы хотите подключиться с помощью SQL Server проверки подлинности. Затем укажите имя пользователя и пароль для подключения к экземпляру SQL Server.

  6. По умолчанию установлен флажок Шифрование соединения, то есть Power Query подключается к базе данных через зашифрованное соединение. Если вы не хотите использовать зашифрованное соединение, снимите этот флажок, а затем нажмите кнопку Подключить.

    Если подключение к SQL Server не установлено через зашифрованное соединение, Power Query предлагает подключиться, используя незашифрованное соединение. Нажмите кнопку ОК в окне сообщения, чтобы использовать незашифрованное соединение.

Дополнительные сведения о дополнительных параметрах соединителя см. в разделе Azure Synapse Analytics (docs.com).

Azure HDInsight используется для анализа больших данных, когда требуется обрабатывать большие объемы данных. Он поддерживает хранение данных и машинное обучение; его можно рассматривать как подсистему потока данных. Дополнительные сведения см. в статье Что такое Azure HDInsight? (docs.com).

  1. Выберите Data > Get Data > From Azure > From Azure HDInsight (HDFS). 

  2. Введите имя учетной записи или URL-адрес учетной записи Microsoft Хранилище BLOB-объектов Azure, связанной с кластером HDInsight, а затем нажмите кнопку ОК.

  3. В диалоговом окне Доступ к Microsoft Azure HDInsight введите ключ учетной записи и нажмите кнопку Подключиться.

  4. Выберите кластер в диалоговом окне Навигатор , а затем найдите и выберите файл содержимого.

  5. Выберите Загрузить , чтобы загрузить выбранную таблицу, или Изменить , чтобы выполнить дополнительные фильтры и преобразования данных перед загрузкой.

Microsoft Хранилище BLOB-объектов Azure — это служба для хранения больших объемов неструктурированных данных, таких как изображения, видео, аудио и документы, доступ к которым можно получить из любой точки мира по протоколу HTTP или HTTPS. Дополнительные сведения о службе Хранилище BLOB-объектов Azure см. в статье Использование хранилища BLOB-объектов.

  1. Выберите Data > Get Data > From Azure > From Хранилище BLOB-объектов Azure

  2. В диалоговом окне Microsoft Хранилище BLOB-объектов Azure введите имя или URL-адрес учетной записи хранения Microsoft Azure, а затем нажмите кнопку ОК.

  3. Если вы подключаетесь к службе хранилища BLOB-объектов в первый раз, вам будет предложено ввести и сохранить ключ доступа к хранилищу. В диалоговом окне Доступ к Microsoft Хранилище BLOB-объектов Azure введите ключ доступа к хранилищу в поле Ключ учетной записи и нажмите кнопку Сохранить.

    Примечание: Если вам нужно получить ключ доступа к хранилищу, перейдите на порталMicrosoft Azure, выберите учетную запись хранения, а затем щелкните значок Управление ключом доступа в нижней части страницы. Щелкните значок копирования справа от первичного ключа, а затем вставьте значение в поле Ключ учетной записи .

  4. В Редактор запросов перечислены все доступные контейнеры в Хранилище BLOB-объектов Azure Майкрософт. В навигаторе выберите контейнер, из которого требуется импортировать данные, и нажмите кнопку Применить & Закрыть.

Дополнительные сведения см. в разделе Хранилище BLOB-объектов Azure (docs.com).

Служба хранилища Azure предоставляет службы хранилища для различных объектов данных. Компонент хранилища таблиц предназначен для данных NoSQL, хранящихся в виде пар «ключ-атрибут». Дополнительные сведения см. в статье Общие сведения о хранилище таблиц (docs.com).

  1. Выберите Data > Get Data > From Azure > From Azure Synapse Analytics.

  2. Введите имя учетной записи или URL-адрес учетной записи хранения таблиц Microsoft Azure, а затем нажмите кнопку ОК.

  1. Выберите Данные > Получить > данныхиз Azure > из Azure Data Lake Storage.

  2. Введите имя учетной записи или URL-адрес учетной записи Microsoft Azure Data Lake Storage, а затем нажмите кнопку ОК.

    Например, swebhdfs://contoso.azuredatalake.net/

  3. При необходимости введите значение в поле Размер страницы в байтах .

Дополнительные сведения см. в разделе Azure Data Lake Storage (docs.com).

Azure Data Lake Storage 2-го поколения объединяет разные хранилища данных в одну хранимую среду. Вы можете использовать новое поколение средств запросов для изучения и анализа данных, работающих с петабайтами данных. Дополнительные сведения см. в разделе Azure Data Lake Storage (docs.com).

  1. В диалоговом окне Azure Data Lake Storage 2-го поколения укажите URL-адрес учетной записи. URL-адреса для Data Lake Storage 2-го поколения имеют следующий шаблон:

    https://<accountname>.dfs.core.windows.net/<container>/<вложенная папка>
    Например, https://contosoadlscdm.dfs.core.windows.net/

  2. Укажите, нужно ли использовать представление файловой системы или представление папок модели общих данных (CDM).

  3. Нажмите кнопку ОК.

  4. Может потребоваться выбрать метод проверки подлинности.

    Например, если выбран метод учетной записи организации , выберите Войти, чтобы войти в учетную запись хранения. Вы будете перенаправлены на страницу входа в свою организацию. Следуйте инструкциям, чтобы войти в учетную запись. После успешного входа выберите Подключиться.

  5. В диалоговом окне Навигатор проверьте сведения и выберите Преобразовать данные для преобразования данных в Power Query или Загрузить для загрузки данных.

Дополнительные сведения см. в разделе Azure Data Lake Storage (docs.com).

Azure Data Explorer — это быстрая и высокомасштабируемая служба просмотра данных для журналов и данных телеметрии. Он может обрабатывать большие объемы разнообразных данных из любого источника данных, таких как веб-сайты, приложения, устройства Интернета вещей и многое другое. Дополнительные сведения см. в статье Что такое azure Data Explorer (docs.com).

  1. Выберите Data > Get Data > From Azure > From Azure Data Explorer.

  2. В диалоговом окне Azure Data Explorer (Kusto) введите соответствующие значения.

    В каждом запросе содержатся полезные примеры, которые помогут вам выполнить этот процесс.

  3. Нажмите кнопку ОК.

Вы можете импортировать наборы данных из организации с соответствующим разрешением, выбрав их на панели Наборы данных Power BI , а затем создав сводную таблицу на новом листе.

  1. Выберите Data > Get Data > from Power BI (<Имя клиента>). Откроется панель Наборы данных Power BI . <имя клиента> зависит от вашей организации, например Power BI (Contoso).

  2. Если доступно много наборов данных, используйте поле Поиска . Щелкните стрелку рядом с полем, чтобы отобразить фильтры ключевых слов для версий и сред, предназначенных для поиска.

  3. Выберите набор данных и создайте сводную таблицу на новом листе. Дополнительные сведения см. в статье Обзор сводных таблиц и сводных диаграмм.

Дополнительные сведения о Power BI см. в статье Создание сводной таблицы на основе наборов данных Power BIи Управление данными в Power BI для справки по Office 365 (docs.com).

Поток данных — это технология подготовки данных, которая позволяет принимать, преобразовывать и загружать данные в среды Microsoft Dataverse, рабочие области Power BI или Azure Data Lake. Потоки данных можно активировать для запуска по требованию или автоматически по расписанию, чтобы данные всегда обновлялись.

  1. Выберите Data > Get Data > From Power Platform > From Dataflows (Получить > данных из Power Platform > из потоков данных).

  2. При появлении запроса введите необходимые учетные данные или войдите от имени другого пользователя. Откроется панель Навигатор .

  3. Выберите поток данных в левой области, чтобы просмотреть его на правой панели.

  4. Выполните одно из следующих действий:

    • Чтобы добавить данные на лист, выберите Загрузить.

    • Чтобы добавить данные в Редактор Power Query, выберите Преобразовать данные.

Дополнительные сведения см. в статье Обзор потоков данных в Microsoft Power Platform.

Используйте Dataverse для безопасного хранения данных и управления ими в облаке. Вы можете создавать или импортировать пользовательские таблицы, относящиеся к вашей организации, заполнять их данными с помощью Power Query, а затем использовать Power Apps или Microsoft Access для создания многофункциональных бизнес-приложений.

  1. Выберите Data > Get Data > from Power Platform > From Dataverse.

  2. При появлении запроса введите необходимые учетные данные или войдите от имени другого пользователя. Откроется панель Навигатор.

  3. Выберите данные в левой области, чтобы просмотреть их на правой панели.

  4. Выполните одно из следующих действий:

    • Чтобы добавить данные на лист, выберите Загрузить.

    • Чтобы добавить данные в Редактор Power Query, выберите Преобразовать данные.

Дополнительные сведения см. в статье Что такое Microsoft Dataverse.

  1. Выберите Данные > Получить > данныхиз веб-служб > из списка SharePoint Online.

  2. В диалоговом окне Папка SharePoint введите корневой URL-адрес сайта SharePoint, не включая ссылки на библиотеку, а затем перейдите к библиотеке.

  3. Выберите реализацию SharePoint бета-версии 2.0 , которая включает дополнительные параметры, чтобы выбрать режим представления:

    Все    Извлекает все столбцы из списка SharePoint.
    По умолчанию     Извлекает столбцы, заданные в представлении по умолчанию списка SharePoint.

  4. В качестве альтернативы бета-версии 2.0 можно выбрать версию 1.0, которая соответствует более ранней версии SharePoint.

Дополнительные сведения о дополнительных параметрах соединителя см. в статье Список SharePoint Online (docs.com).

  1. Выберите Data > Get Data > from Online Services ( Получить > данныхиз веб-служб ) в списке SharePoint Online.

  2. В диалоговом окне Microsoft Exchange введите адрес электронной почты в виде псевдонима <>@<организация>.com

  3. Если у вас много объектов, используйте поле Поиск , чтобы найти объект, или используйте параметры отображения вместе с кнопкой Обновить , чтобы отфильтровать список.

  4. Установите или снимите флажок Пропускать файлы с ошибками в нижней части диалогового окна.

  5. Выберите нужную таблицу: Календарь, Почта, Приглашения на собрания, Люди и Задачи.

  6. Выполните одно из следующих действий:

  • Чтобы создать запрос, а затем загрузить на лист, выберите Загрузить > Загрузить.

  • Чтобы создать запрос, а затем открыть диалоговое окно Импорт данных , выберите Загрузить > Загрузить в.

  • Чтобы создать запрос, а затем запустить Редактор Power Query, выберите Преобразовать данные.

  1. Выберите Среду , к которой нужно подключиться.

  2. В меню щелкните значок Параметры > Дополнительные настройки > ресурсов разработчика.

  3. Скопируйте значение веб-API экземпляра

    Примечания: 

    • Формат URL-адреса будет примерно таким, какhttps://<tenant>.crm.dynamics.com/api/data/v9.0.

    • Точный формат URL-адреса, который будет использоваться для подключения, зависит от региона и версии CDS для приложений, которые вы используете. Дополнительные сведения см. в статье URL-адрес и версии веб-API (docs.com).

  4. Выберите Data > Get Data > From Online Services > From Dynamics 365 (online)).

  5. В диалоговом окне с выбранным параметром Базовый введите URL-адрес веб-API для подключения CDS for Apps и нажмите кнопку ОК.

    • Если выбран параметр Дополнительно , можно добавить в запрос некоторые дополнительные параметры, чтобы управлять возвращаемыми данными. Дополнительные сведения см. в статье Запрос данных с помощью веб-API (docs.com).

  6. Выберите Учетная запись организации.

    • Если вы не вошли в систему с помощью учетной записи Microsoft Work или School, используемой для доступа к Dataverse for Apps, выберите Войти и введите имя пользователя и пароль учетной записи.

  7. Выберите Подключиться.

  8. В диалоговом окне Навигатор выберите данные, которые нужно извлечь.

  9. Убедитесь, что данные верны, а затем выберите Загрузить или Изменить, чтобы открыть Редактор Power Query.

  1. Выберите Data > Get Data > from Online Services > From Salesforce Objects . Откроется диалоговое окно Объекты Salesforce .

  2. Выберите Рабочая или Настраиваемая. Если вы выберете Пользовательский, введите URL-адрес пользовательского экземпляра.

  3. Выберите или снимите флажок Включить связи столбца.

  4. Нажмите кнопку ОК.

Дополнительные сведения о дополнительных параметрах соединителя см. в разделе Объекты Salesforce (docs.com).

Так как salesforce Reports имеет ограничения API, извлекая только первые 2000 строк для каждого отчета, рассмотрите возможность использования соединителя объектов Salesforce для обхода этого ограничения при необходимости.

  1. Выберите Данные > Получить > данныхиз веб-служб > из отчетов Salesforce. Откроется диалоговое окно Отчеты Salesforce .

  2. Выберите Рабочая или Настраиваемая. Если вы выберете Пользовательский, введите URL-адрес пользовательского экземпляра.

  3. Выберите или снимите флажок Включить связи столбца.

  4. Нажмите кнопку ОК.

Дополнительные сведения о дополнительных параметрах соединителя см. в разделе Salesforce Reports (docs.com).

Убедитесь, что у вас установлена последняя версия соединителя Adobe Analytics. Дополнительные сведения см. в статье Подключение к Adobe Analytics в Power BI Desktop (docs.com).

  1. Выберите Данные > Получить данные > из веб-служб > из Adobe Analytics.

  2. Нажмите кнопку Продолжить. Откроется диалоговое окно Учетная запись Adobe .

  3. Войдите с учетной записью организации Adobe Analytics и выберите Подключиться.

Дополнительные сведения о дополнительных параметрах соединителя см . в разделе Adobe Analytics.

Дополнительные сведения см. в разделе Из таблицы или диапазона.

Важно: 

  • При попытке импортировать данные из Интернета может появиться следующее сообщение: «Для использования этого соединителя требуется установить один или несколько дополнительных компонентов». Для веб-соединителя на компьютере должна быть установлена платформа WebView 2. 

  • Его можно скачать здесь. 

Ваш браузер не поддерживает видео. Установите Microsoft Silverlight, Adobe Flash Player или Internet Explorer 9.

Последовательность действий

  1. Выберите Данные > Новый запрос > из других источников > из Интернета.

  2. В диалоговом окне Из Интернета введите URL-адрес веб-страницы, а затем нажмите кнопку ОК.

    Power Query > "Из Интернета" > диалоговое окно для ввода URL-адреса

    В этом случае используется страница https://ru.wikipedia.org/wiki/Чемпионат_Европы_по_футболу.

    Если веб-страница требует учетные данные пользователя:

    • Выберите Дополнительно, а затем в диалоговом окне Доступ к Интернету введите свои учетные данные.

    • Нажмите Сохранить.

  3. Нажмите кнопку ОК.

  4. В области Навигатор выполните следующие действия.

    Выберите Представление таблицы, например Результаты.

    Power Query > "Из Интернета" > "Навигатор", представление таблицы
    Выберите Веб-представление, чтобы увидеть таблицу в виде веб-страницы.

    Power Query > "Из Интернета" > "Навигатор", веб-представление

  5. Выберите Загрузить, чтобы загрузить данные на лист.

Дополнительные сведения о дополнительных параметрах соединителя см. в разделе Web (docs.com).

  1. Выберите Данные > Получить > данныхиз других источников > из списка SharePoint.

  2. В диалоговом окне Списки Microsoft SharePoint введите URL-адрес сайта SharePoint.

    Примечание: При подключении к списку SharePoint введите URL-адрес сайта, а не URL-адрес списка. В диалоговом окне Доступ к SharePoint выберите наиболее общий URL-адрес, чтобы правильно пройти проверку подлинности на сайте. По умолчанию выбран наиболее общий URL-адрес.

  3. Нажмите кнопку ОК.

  4. В диалоговом окне Доступ к SharePoint выберите параметр учетных данных:

    • Выберите Анонимно, если на сервере SharePoint Server не требуются учетные данные.

      Excel Power Query подключиться к диалоговому окму подключению к списку Sharepoint

    • Выберите Windows, если на сервере SharePoint Server требуются учетные данные Windows.

    • Выберите Учетная запись в организации, если на сервере SharePoint Server требуются данные учетной записи в организации.

  5. Нажмите Подключиться.

Дополнительные сведения о дополнительных параметрах соединителя см. в статье Список SharePoint (docs.com).

  1. Выберите Данные > Получить > данныхиз других источников > из веб-канала OData

  2. В диалоговом окне Канал OData введите URL-адрес канала OData.

  3. Нажмите кнопку ОК.

  4. Если для канала OData требуются учетные данные пользователя, в диалоговом окне Доступ к каналу OData:

    1. Выберите Windows, если для канала OData требуется проверка подлинности Windows.

    2. Щелкните Основной, если для канала OData требуются имя пользователя и пароль.

    3. Выберите Ключ Marketplace, если для канала OData требуется ключ учетной записи Marketplace. Вы можете выбрать параметр Получить ключ учетной записи Marketplace, чтобы подписаться на веб-каналы OData Microsoft Azure Marketplace. Вы также можете зарегистрироваться в Microsoft Azure Marketplace в диалоговом окне Доступ к веб-каналу OData.

    4. Щелкните Организационная учетная запись, если для канала OData требуются учетные данные для федеративного доступа. При использовании Windows Live ID войдите в свою учетную запись.

    5. Нажмите кнопку Сохранить.

Примечание: Импорт в веб-канал OData поддерживает формат службы светлых данных JSON.

Дополнительные сведения о дополнительных параметрах соединителя см. в разделе Веб-канал OData (docs.com).

Распределенная файловая система Hadoop (HDFS) предназначена для хранения терабайтов и даже петабайт данных. HDFS подключает узлы компьютеров в кластерах, по которым распределены файлы данных, и вы можете получить доступ к этим файлам данных как к одному простому файловому потоку.

  1. Выберите Данные > Получить > данныхиз других источников > из файла Hadoop (HDFS).

  2. Введите имя сервера в поле Сервер и нажмите кнопку ОК.

  1. Выберите Данные > Получить > данныхиз других источников > из Active Directory.

  2. Введите свой домен в диалоговом окне Active Directory .

  3. В диалоговом окне домен Active Directory для домена выберите Использовать мои текущие учетные данные или выберите Использовать альтернативные учетные данные, а затем введите имя пользователя и пароль.

  4. Выберите Подключиться.

  5. После успешного подключения используйте панель Навигатор , чтобы просмотреть все домены, доступные в Active Directory, а затем детализировать сведения о Active Directory, включая пользователи, учетные записи и компьютеры.

  1. Выберите Данные > Получить > данныхиз других источников > из Microsoft Exchange

  2. В диалоговом окне Доступ к Exchange Server введите адрес ипароль Email.

  3. Нажмите Сохранить.

  4. В диалоговом окне Служба автообнаружения Microsoft Exchange выберите Разрешить , чтобы разрешить службе Exchange доверять вашим учетным данным.

  1. Выберите Данные > Получить > данныхиз других источников > из ODBC

  2. В диалоговом окне Из ODBC выберите имя источника данных (DSN).

  3. Введите строку подключения и нажмите кнопку ОК.

  4. В следующем диалоговом окне выберите Параметры подключения по умолчанию или Пользовательский, Windows или База данных , введите учетные данные и нажмите кнопку Подключить.

  5. В области Навигатор выберите таблицы или запросы, к которым требуется подключиться, а затем выберите Загрузить или Изменить.

Дополнительные сведения о дополнительных параметрах соединителя см. в разделе Источник данных ODBC (docs.com).

  1. Выберите Данные > Получить > данныхиз других источников > из OLEDB

  2. В диалоговом окне Из OLE DB введите строку подключения и нажмите кнопку ОК.

  3. В диалоговом окне Поставщик OLEDB выберите из параметров По умолчанию или Пользовательское, Windows или Подключение к базе данных , введите соответствующие учетные данные и нажмите кнопку Подключить.

  4. В диалоговом окне Навигатор выберите базу данных и таблицы или запросы, к которым требуется подключиться, а затем выберите Загрузить или Изменить.

Важно: 
Уведомление о прекращении использования соединителя данных Facebook   Импорт и обновление данных из Facebook в Excel перестанет работать в апреле 2020 г. Вы по-прежнему сможете использовать соединитель Power Query Facebook (Get & Transform), но начиная с апреля 2020 года вы не сможете подключиться к Facebook и получите сообщение об ошибке. Мы рекомендуем как можно скорее пересмотреть или удалить все существующие запросы Power Query (Get & Transform), которые используют соединитель Facebook, чтобы избежать непредвиденных результатов.

Примечание: Если вы подключаетесь к Facebook впервые, вам будет предложено указать учетные данные. Войдите, используя свою учетную запись Facebook, и разрешите доступ к приложению Power Query. Вы можете отключить последующие запросы, установив флажок Не предупреждать меня больше об этом соединителе.

  1. На вкладке Данные щелкните Получить данные > Из веб-служб > Из Facebook. Если вы не видите кнопки Получить данные, нажмите кнопку Создать запрос и выберите пункты Из других источников -> Из Facebook.

  2. В диалоговом окне Facebook подключитесь к Facebook, используя ссылку «Я», имя пользователя или ИД объекта.

    Примечание: Ваше имя пользователя Facebook отличается от адреса электронной почты, используемого при входе.

  3. Выберите нужную категорию из раскрывающегося списка Подключение. Например, выберите Друзья для доступа ко всей своей информации в категории Друзья Facebook.

  4. Нажмите кнопку ОК.

  5. При необходимости нажмите Войти в диалоговом окне Доступ к Facebook, а затем введите адрес электронной почты или номер телефона и пароль. Вы можете установить флажок, чтобы оставаться в службе. После входа нажмите кнопку Подключить.

  6. После успешного подключения вы сможете просмотреть таблицу, содержащую информацию о выбранной категории. Например, если выбрана категория «Друзья», Power Query отображает таблицу, содержащую имена ваших друзей из Facebook.

  7. Нажмите кнопку Загрузить или Изменить.

Вы можете создать пустой запрос. Вы можете ввести данные, чтобы опробовать некоторые команды, или выбрать исходные данные из Power Query:

  • Чтобы изменить параметр, например учетные данные или конфиденциальность, выберите Главная > Параметры источника данных. Дополнительные сведения см. в разделе Управление параметрами и разрешениями источника данных.

  • Чтобы импортировать внешний источник данных, выберите Главная > Новый источник. Эта команда аналогична команде Get Data (Получить данные ) на вкладке Данные ленты Excel.

  • Чтобы импортировать недавний источник, выберите Главная > Последние источники. Эта команда аналогична команде Последние источники на вкладке Данные ленты Excel.

При добавлении двух или более запросов данные добавляются в запрос на основе имен заголовков столбцов в обеих таблицах. Если запросы не имеют совпадающих столбцов, значения NULL добавляются в столбец без сопоставления. Запросы добавляются в том порядке, в котором они выбраны.

Дополнительные сведения см. в разделах Добавление запросов (Power Query) и Добавление запросов (docs.com).

Если вы являетесь разработчиком, в Excel есть несколько подходов, которые можно использовать для импорта данных:

  • Для получения доступа к внешнему источнику данных можно использовать Visual Basic для приложений. В зависимости от источника данных для получения данных можно использовать объекты данных ActiveX или Объекты доступа к данным. Вы также можете определить в коде строку подключения, указывающую сведения о подключении. Использовать строку подключения полезно, например, если вы хотите избежать необходимости требовать от системных администраторов или пользователей сначала создать файл подключения или упростить установку приложения.

  • При импорте данных из базы данных SQL Server рассмотрите возможность использования собственного клиента SQL, который представляет собой автономный api для доступа к данным, который используется как для OLE DB, так и для ODBC. Он объединяет поставщик SQL OLE DB и драйвер SQL ODBC в одну собственную библиотеку динамической компоновки (DLL), а также предоставляет новые функции, отличные от компонентов доступа к данным Майкрософт (MDAC). Собственный клиент SQL можно использовать для создания новых приложений или улучшения существующих приложений, которые могут использовать преимущества новых функций SQL Server, таких как несколько активных результирующих наборов (MARS), User-Defined типов (UDT) и поддержка типов данных XML.

  • Функция RTD извлекает данные в режиме реального времени из программы, которая поддерживает автоматизацию COM. Надстройка ДРВ автоматизации COM должна быть создана и зарегистрирована на локальном компьютере.

  • The SQL. Функция REQUEST подключается к внешнему источнику данных и выполняет запрос с листа. The SQL. Затем функция REQUEST возвращает результат в виде массива без необходимости программирования макросов. Если данная функция недоступна, установите надстройку Microsoft Excel ODBC (XLODBC.XLA). Надстройку можно установить из Office.com.

Дополнительные сведения о создании Visual Basic для приложений см. в справке по Visual Basic.

  1. Выберите Данные > Получить данные (Power Query).

  2. В диалоговом окне Выбор источника данных выберите книга Excel.

  3. Нажмите кнопку Обзор , чтобы найти файл, который требуется подключить в качестве источника данных.

  4. В диалоговом окне Выбор файлов выберите файл, просмотрите сведения о файле, а затем выберите Получить данные и Далее.

  5. Слева выберите данные, которые нужно импортировать, а затем справа подтвердите выбор в режиме предварительного просмотра данных.

  6. В правом нижнем углу выберите Загрузить.

  1. Выберите Данные > Получить данные (Power Query).

  2. В диалоговом окне Выбор источника данных выберите Текст или CSV.

  3. Нажмите кнопку Обзор , чтобы найти файл, который требуется подключить в качестве источника данных.

  4. В диалоговом окне Выбор файлов выберите файл, просмотрите сведения о файле, а затем выберите Получить данные и Далее.

  5. Подтвердите источник файла и выбор разделителя в предварительном просмотре данных.

  6. В правом нижнем углу выберите Загрузить.

  1. Выберите Данные > Получить данные (Power Query).

  2. В диалоговом окне Выбор источника данных выберите XML.

  3. Нажмите кнопку Обзор , чтобы найти файл, который требуется подключить в качестве источника данных.

  4. В диалоговом окне Выбор файлов выберите файл, просмотрите сведения о файле, а затем выберите Получить данные и Далее.

  5. Слева выберите данные, которые нужно импортировать, а затем справа подтвердите выбор в режиме предварительного просмотра данных.

  6. В правом нижнем углу выберите Загрузить.

  1. Выберите Данные > Получить данные (Power Query).

  2. В диалоговом окне Выбор источника данных выберите JASON.

  3. Нажмите кнопку Обзор , чтобы найти файл, который требуется подключить в качестве источника данных.

  4. В диалоговом окне Выбор файлов выберите файл, просмотрите сведения о файле, а затем выберите Получить данные и Далее.

  5. В правом нижнем углу выберите Закрыть & Загрузить.

  1. Выберите Данные > Получить данные (Power Query).

  2. В диалоговом окне Выбор источника данных выберите SQL Server базу данных.

  3. В разделе Параметры подключения введите имя сервера.

  4. В разделе Учетные данные подключения введите имя пользователя и пароль, решите, следует ли использовать зашифрованное подключение, а затем нажмите кнопку Далее.

  5. Слева выберите данные, которые нужно импортировать, а затем справа подтвердите выбор в режиме предварительного просмотра данных.

  6. В правом нижнем углу выберите Загрузить.

  1. Выберите Данные > Получить данные (Power Query).

  2. В диалоговом окне Выбор источника данных выберите список SharePoint Online.

  3. В диалоговом окне Подключение к источнику данных введите корневой URL-адрес сайта SharePoint без ссылки на библиотеку, а затем войдите в учетную запись организации.

  4. Выберите реализацию SharePoint версии 2.0, которая включает дополнительные параметры, чтобы выбрать режим просмотра:

    • Все , которое извлекает все столбцы из списка SharePoint.

    • По умолчанию извлекаются столбцы, заданные в представлении по умолчанию списка SharePoint.

    Примечание.    В качестве альтернативы версии 2.0 можно выбрать версию 1.0, которая соответствует более ранней версии SharePoint.

  5. Нажмите Далее.

  6. Слева выберите данные, которые нужно импортировать, а затем справа подтвердите выбор в режиме предварительного просмотра данных.

  7. В правом нижнем углу выберите Загрузить.

  1. Выберите Данные > Получить данные (Power Query).

  2. В диалоговом окне Выбор источника данных выберите OData.

  3. В диалоговом окне Веб-канал OData введите URL-адрес веб-канала OData.

  4. Если для веб-канала OData требуются учетные данные пользователя, в диалоговом окне Учетные данные подключения в разделе Тип проверки подлинности:

    • Выберите Базовый , если для веб-канала OData требуются имя пользователя и пароль.

    • Выберите Учетная запись организации , если для веб-канала OData требуются федеративные учетные данные для доступа, и выберите Войти.

  5. Нажмите кнопку Далее.

  1. Выберите Данные > Получить данные (Power Query).

  2. В диалоговом окне Выбор источника данных выберите Пустая таблица.

  3. Введите нужные данные в ячейки таблицы. Вы также можете переименовать таблицу в разделе Имя внизу.

  4. Нажмите кнопку Далее.

  5. После редактирования запроса в правом верхнем углу выберите Закрыть & загрузить.

  1. Выберите Данные > Получить данные (Power Query).

  2. В диалоговом окне Выбор источника данных выберите Пустой запрос.

  3. Введите нужный источник и команды, а затем нажмите кнопку Далее.

  4. После редактирования запроса в правом верхнем углу выберите Закрыть & загрузить.

Надстройку Power Query можно использовать для подключения к внешним источникам данных и выполнения расширенного анализа данных. В следующих разделах приведены инструкции по подключению к источникам данных: веб-страницам, текстовым файлам, базам данных, веб-службы и файлам Excel, таблицам и диапазонам.

Важно: Прежде чем использовать Power Query в Excel 2013, его необходимо активировать: выберите Пункт Параметры > файлов > надстройки. В раскрывающемся списке Управление в нижней части экрана выберите пункт Надстройки COM и нажмите кнопку Перейти. Установите флажок Power Query и нажмите кнопку ОК. Лента Power Query должна появиться автоматически, но в противном случае закройте и перезапустите Excel.

Использование редактора запросов

Примечание: 
Редактор запросов отображается при загрузке, изменении или создании запроса с помощью Power Query. В видео показано окно редактора запросов, которое отображается после изменения запроса в книге Excel. Чтобы просмотреть Редактор запросов без загрузки или изменения существующего запроса книги, в разделе Получение внешних данных на вкладке ленты Power Query выберите Из других источников > пустой запрос. В видео показан один из способов отображения редактора запросов.

Отображение редактора запросов в Excel

  1. На вкладке ленты Power Query щелкните Из файла > Из CSV или Из текста.

  2. В диалоговом окне Обзор разделенных запятыми значений найдите или введите путь к файлу, к которому требуется выполнить запрос.

  3. Нажмите кнопку Открыть.

Примечание: Если вы импортируете данные из CSV-файла, Power Query автоматически определит разделители столбцов, включая заголовки и типы. Например, при импорте CSV-файла, представленного ниже, Power Query автоматически будет использовать первую строку в качестве заголовков столбцов и изменит тип данных каждого столбца.

Пример CSV-файла

Изображение CSV-файла

Power Query автоматически изменяет тип данных каждого столбца:

  • Тип поля «Код заказа» изменяется на число

  • Тип поля «Дата заказа» изменяется на дату

  • Тип поля «Категория» остается текстом (тип столбца, используемый по умолчанию)

  • Тип поля «Название товара» остается текстом (тип столбца, используемый по умолчанию)

  • Тип поля «Продажи» изменяется на число

В редакторе запросов Power Query автоматически применяет шаги FirstRowAsHeader и ChangeType. Эти автоматические действия эквивалентны повышению уровня строки вручную и ручному изменению каждого типа столбца.

После Power Query автоматического обнаружения столбцов можно также использовать Редактор запросов для написания формул для Power Query. Например:

= Csv.Document(File.Contents("C:ExamplesProducts Categories and Orders.csv"),null,",",null,1252)

= Table.PromoteHeaders(Source)

= Table.TransformColumnTypes(FirstRowAsHeader,{{"OrderID", type number}, {"CustomerID", type text}, {"EmployeeID", type number}, {"OrderDate", type date}, {"RequiredDate", type date}, {"ShipName", type text}})

Примечание: 
Редактор запросов отображается только при загрузке, редактировании или создании нового запроса с помощью Power Query. В видео показано окно редактора запросов, которое отображается после изменения запроса в книге Excel 2013. Чтобы просмотреть Редактор запросов без загрузки или изменения существующего запроса книги, в разделе Получение внешних данных на вкладке ленты Power Query выберите Из других источников > пустой запрос. В видео показан один из способов отображения редактора запросов.

Отображение редактора запросов в Excel

  1. Выберите любую ячейку в диапазоне данных.

  2. На вкладке ленты Power Query щелкните Из таблицы.

    Подключение к таблице данных Excel

  3. Если появился соответствующий запрос, в диалоговом окне Из таблицы нажмите кнопку Выбор диапазона, чтобы выбрать конкретный диапазон в качестве источника данных.

    Диалоговое окно "Из таблицы"

  4. Если диапазон данных содержит заголовки столбцов, установите флажок Таблица с заголовками. Ячейки заголовков используются для задания имен столбцов в запросе.

  5. В редакторе запросов нажмите кнопку Закрыть и загрузить.

Примечание: Если диапазон данных определен как именованный или находится в таблице Excel, Power Query автоматически распознает весь диапазон и загружает его в редактор запросов. При загрузке в редактор запросов обычный текст автоматически преобразуется в таблицу.

Для написания формул Power Query можно можете использовать редактор запросов.

= Excel.CurrentWorkbook(){[Name="Table1"]}[Content]

Пример формулы в редакторе запросов

Примечание: 
Редактор запросов отображается только при загрузке, редактировании или создании нового запроса с помощью Power Query. В видео показано окно редактора запросов, которое отображается после изменения запроса в книге Excel. Чтобы просмотреть Редактор запросов без загрузки или изменения существующего запроса книги, в разделе Получение внешних данных на вкладке ленты Power Query выберите Из других источников > пустой запрос. В видео показан один из способов отображения редактора запросов.

Отображение редактора запросов в Excel

  1. На вкладке ленты Power Query щелкните Из файла > Из Excel.

  2. В диалоговом окне Обзор Excel найдите или введите путь к файлу, к которому требуется выполнить запрос.

  3. Нажмите кнопку Открыть.

    Если в исходной книге есть именованные диапазоны, их имена будут доступны как наборы данных.

Для написания формул Power Query можно также использовать редактор запросов. Например:

= Excel.Workbook
 (File.Contents("C:ExampleProducts and Orders.xlsx"))

Примечание: 
Редактор запросов отображается только при загрузке, редактировании или создании нового запроса с помощью Power Query. В видео показано окно редактора запросов, которое отображается после изменения запроса в книге Excel 2013. Чтобы просмотреть Редактор запросов без загрузки или изменения существующего запроса книги, в разделе Получение внешних данных на вкладке ленты Power Query выберите Из других источников > пустой запрос. В видео показан один из способов отображения редактора запросов.

Отображение редактора запросов в Excel

Примечание: При попытке импорта данных из файла Excel прежних версий или базы данных Access с определенной конфигурацией возникает ошибка, вызванная тем, что ядро СУБД Microsoft Access 2010 (поставщик Microsoft.ACE.OLEDB.12.0) не зарегистрировано на локальном компьютере. Ошибка возникает в системах, в которых установлен только набор Office 2013. Чтобы устранить ее, скачайте следующие ресурсы для обеспечения доступа к нужным источникам данных.

  • Распространяемый пакет ядра СУБД Microsoft Access 2010

  • Access Database Engine 2010 с пакетом обновления 1 (SP1)

  1. На вкладке ленты Power Query нажмите кнопку Из Интернета.

  2. В диалоговом окне Из Интернета введите URL-адрес веб-страницы и нажмите кнопку ОК.

    Power Query > "Из Интернета" > диалоговое окно для ввода URL-адреса

    В этом случае используется страница https://ru.wikipedia.org/wiki/Чемпионат_Европы_по_футболу.

    Если веб-страница требует учетные данные пользователя:

    • В поле Доступ к веб-содержимому  выберите тип учетных данных и введите значения для проверки подлинности.

    • Нажмите кнопку Сохранить.

  3. Нажмите кнопку ОК.

  4. Power Query проанализирует веб-страницу, и откроется область Навигатор в режиме Представление таблицы.

    Если вы знаете, к какой таблице нужно подключиться, выберите ее в списке. В этом примере выбрана таблица «Призёры».

    Power Query > "Из Интернета" > "Навигатор", представление таблицы

    В противном случае можно переключиться в режим Веб-представление и выбрать нужную таблицу вручную. В этом случае выбрана таблица «Призёры».

    Power Query > "Из Интернета" > "Навигатор", веб-представление

  5. Нажмите кнопку Загрузить, и Power Query загрузит выбранные данные из Интернета в Excel.

  1. На вкладке ленты Power Query щелкните Из базы данных > Из базы данных SQL Server.

    Параметры "Из базы данных" Power Query

  2. В диалоговом окне База данных Microsoft SQL укажите SQL Server, к которому нужно подключиться, в поле Имя сервера. При необходимости вы также можете указать имя базы данных.

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса на ее языке.

    Диалоговое окно подключения к базе данных SQL Server с помощью Power Query

  4. Нажмите кнопку ОК.

  5. Выберите режим проверки подлинности для подключения к базе данных SQL Server.

    Учетные данные для подключения к SQL Server

    1. Windows: это выбор по умолчанию. Выберите это значение, если вы хотите подключаться, используя проверку подлинности Windows.

    2. База данных: выберите это значение, если вы хотите подключаться, используя проверку подлинности SQL Server. Затем укажите имя пользователя и пароль для подключения к экземпляру SQL Server.

  6. По умолчанию установлен флажок Шифрование соединения, то есть Power Query подключается к базе данных через зашифрованное соединение. Если вы не хотите использовать зашифрованное соединение, снимите этот флажок, а затем нажмите кнопку Подключить.

    Если подключение к SQL Server не установлено через зашифрованное соединение, Power Query предлагает подключиться, используя незашифрованное соединение. Нажмите кнопку ОК в окне сообщения, чтобы использовать незашифрованное соединение.

Пример формулы

Для написания формул Power Query можно также использовать редактор запросов.

= Sql.Databases(".")
= Sql.Database(".","Contoso")

  1. Откройте вкладку Power Query на ленте и выберите Получить внешние данные > из других источников > из ODBC.

  2. В диалоговом окне Из ODBC выберите имя источника данных (DSN).

  3. Введите строку подключения, а затем нажмите кнопку ОК.

  4. В следующем диалоговом окне выберите параметры По умолчанию или Пользовательское, Windows или Подключение к базе данных , введите учетные данные, а затем нажмите кнопку Подключить.

  5. В области Навигатор выберите таблицы или запросы, к которым требуется подключиться, а затем нажмите кнопку Загрузить или Изменить.

  1. На вкладке ленты Power Query выберите Из базы данных > Из базы данных Access.

    Диалоговое окно "Получение данных из базы данных"

  2. В диалоговом окне Обзор найдите или введите URL-адрес файла для импорта или связывания с файлом.

  3. Выполните действия, описанные в диалоговом окне Навигатор , чтобы подключиться к выбранной таблице или запросу.

  4. Нажмите кнопку Загрузить или Изменить.

  1. На вкладке ленты Power Query щелкните Из файла > Из XML.

    Диалоговое окно Power Query из файла

  2. В диалоговом окне Обзор из XML найдите или введите URL-адрес файла для импорта или ссылки на файл.

  3. Нажмите кнопку Открыть.

    После успешного подключения вы сможете использовать панель Навигатор для просмотра и просмотра коллекций элементов в XML-файле в табличной форме.

Для написания формул Power Query можно также использовать редактор запросов. Например:

= Xml.Tables(File.Contents("C:DownloadsXML Example.xml"))

Примечание: 
Редактор запросов отображается только при загрузке, редактировании или создании нового запроса с помощью Power Query. В видео показано окно редактора запросов, которое отображается после изменения запроса в книге Excel. Чтобы просмотреть Редактор запросов без загрузки или изменения существующего запроса книги, в разделе Получение внешних данных на вкладке ленты Power Query выберите Из других источников > пустой запрос. В видео показан один из способов отображения редактора запросов.

  1. На вкладке Данные в группе Получить внешние данные щелкните Из других источников, а затем — Из служб Analysis Services.

    Изображение ленты Excel

    Отобразится мастер подключения к данным. Этот мастер имеет три области.

    • Подключение к серверу базы данных

    • Выбор базы данных и таблицы

    • Сохранение файла подключения к данным и завершение

  2. В области Подключение к серверу базы данных в поле Имя сервера введите имя сервера базы данных OLAP.

    Совет: Если известно имя автономного файла куба, к которому требуется подключиться, можно ввести полный путь к файлу, имя файла и расширение.

  3. В разделе Учетные данные входа выполните одно из следующих действий, а затем нажмите кнопку Далее.

    • Чтобы использовать текущее имя пользователя и пароль Windows, щелкните Использовать проверку подлинности Windows.

    • Чтобы указать имя пользователя и пароль для доступа к базе данных, выберите вариант Использовать следующие имя пользователя и пароль и введите соответствующие данные в поля Имя пользователя и Пароль.

  4. В области Выберите базу данных, содержащую нужные данные , выберите базу данных и нажмите кнопку Далее.

    Чтобы подключиться к определенному куб в базе данных, убедитесь, что выбран параметр Подключиться к определенному кубу или таблице , а затем выберите куб из списка.

  5. В области Сохранить файл подключения к данным и завершить в поле Имя файла при необходимости проверьте имя файла по умолчанию (необязательно).

    Нажмите кнопку Обзор , чтобы изменить расположение файла по умолчанию для моих источников данных, или проверьте наличие существующих имен файлов.

  6. В полях Описание, Понятное имя и Ключевые слова поиска введите описание файла, понятное имя и распространенные поисковые слова (все они являются необязательными).

  7. Чтобы убедиться, что файл подключения используется при обновлении сводной таблицы, щелкните Всегда пытаться использовать этот файл для обновления данных.

    Если установить этот флажок, обновления файла подключения всегда будут использоваться всеми книгами, которые используют этот файл подключения.

  8. Нажмите кнопку Готово, чтобы закрыть окно мастера подключения к данным.

  9. В диалоговом окне Импорт данных в разделе Выбор способа просмотра этих данных в книгевыполните одно из следующих действий.

    • Чтобы создать только отчет сводной таблицы, щелкните Отчет сводной таблицы.

    • Чтобы создать отчет сводной таблицы и отчет сводной диаграммы, щелкните Сводная диаграмма и Отчет сводной таблицы.

    • Чтобы сохранить выбранное подключение в книге для последующего использования, щелкните Только создать подключение. Этот флажок гарантирует, что соединение используется формулами, содержащими созданные функции куба, и что вы не хотите создавать отчет сводной таблицы.

  10. В разделе Куда вы хотите поместить данные, выполните одно из следующих действий:

    • Чтобы поместить отчет сводной таблицы на существующий лист, выберите Существующий лист, а затем введите ссылку на первую ячейку в диапазоне ячеек, в котором нужно найти отчет сводной таблицы.

      Можно также нажать кнопку Свернуть диалоговое окно Изображение кнопки , чтобы временно скрыть диалоговое окно, выбрать начальную ячейку на листе, который вы хотите использовать, а затем нажать кнопку Развернуть диалоговое окно Изображение кнопки.

  11. Чтобы поместить отчет сводной таблицы на новый лист, начинающийся с ячейки A1, щелкните Новый лист.

  12. Чтобы проверить или изменить свойства подключения, щелкните Свойства, внесите необходимые изменения в диалоговом окне Свойства подключения и нажмите кнопку ОК.

  1. На вкладке Power Query щелкните Из других источников > Пустой запрос.

  2. В Редактор запросов щелкните Расширенный редактор.

  3. Введите строку запроса следующим образом, заменив «C:UsersNameDesktopJSONTest.json» путем к JSON-файлу.

    let
    
        Source = Json.Document(File.Contents("C:UsersNameDesktopJSONTest.json")),
        #"Converted to Table" = Record.ToTable(Source)
    
    in
    
        #"Converted to Table"
    

  1. На вкладке ленты Power Query щелкните Из базы данных > Из базы данных Oracle.

    Параметры "Из базы данных" Power Query

  2. В диалоговом окне База данных Oracle в поле Имя сервера укажите сервер Oracle, к которому нужно подключиться. Если требуется идентификатор безопасности, его можно указать в виде «Имя_сервера/идентификатор безопасности».

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса на ее языке.

  4. Нажмите кнопку ОК.

  5. Если серверу Oracle требуются учетные данные пользователя базы данных:

    1. В диалоговом окне Доступ к базе данных введите имя пользователя и пароль.

    2. Нажмите кнопку Подключить.

  1. На вкладке ленты Power Query выберите из других источников > из списка SharePoint.

    Получение данных из других источников с помощью Power Query

  2. В появившемся диалоговом окне Списки Microsoft SharePoint введите URL-адрес сайта SharePoint.

    Примечание: При подключении к списку SharePoint введите URL-адрес сайта, а не URL-адрес списка. В диалоговом окне Доступ к SharePoint выберите наиболее общий URL-адрес, чтобы правильно пройти проверку подлинности на сайте. По умолчанию выбран наиболее общий URL-адрес.

  3. Чтобы продолжить, нажмите кнопку ОК.

  4. В появившемся диалоговом окне Доступ к SharePoint выберите тип учетных данных.

    1. Выберите Анонимно, если на сервере SharePoint Server не требуются учетные данные.

    2. Выберите Windows, если на сервере SharePoint Server требуются учетные данные Windows.

    3. Выберите Учетная запись в организации, если на сервере SharePoint Server требуются данные учетной записи в организации.

  5. Нажмите Подключиться.

    Excel Power Query подключиться к диалоговому окму подключению к списку Sharepoint

  1. На вкладке ленты Power Query выберите Из другого источника > из веб-канала OData.

    Получение данных из других источников с помощью Power Query

  2. В диалоговом окне Канал OData введите URL-адрес канала OData.

  3. Нажмите кнопку ОК.

  4. Если для канала OData требуются учетные данные пользователя, в диалоговом окне Доступ к каналу OData:

    1. Выберите Windows, если для канала OData требуется проверка подлинности Windows.

    2. Щелкните Основной, если для канала OData требуются имя пользователя и пароль.

    3. Выберите Ключ Marketplace, если для канала OData требуется ключ учетной записи Marketplace. Вы можете щелкнуть Получить ключ учетной записи Marketplace для подписки на каналы OData Microsoft Azure Marketplace. В диалоговом окне «Доступ к каналу OData» вы можете также зарегистрироваться в Microsoft Azure Marketplace.

    4. Щелкните Организационная учетная запись, если для канала OData требуются учетные данные для федеративного доступа. При использовании Windows Live ID войдите в свою учетную запись.

    5. Нажмите кнопку Сохранить.

Примечание:  Для подключения к каналу OData поддерживается упрощенный формат службы данных JSON.

  1. Перейдите на вкладку Данные и выберите Получить данные > из других источников > из OLEDB. Если вы не видите кнопку Получить данные , следуйте приведенным ниже инструкциям мастера подключения к данным .

  2. В диалоговом окне Из OLE DB введите строку подключения, а затем нажмите кнопку ОК.

  3. В диалоговом окне Поставщик OLEDB выберите из параметров По умолчанию или Пользовательское, Windows или Подключение к базе данных , введите соответствующие учетные данные и нажмите кнопку Подключиться.

  4. В диалоговом окне Навигатор выберите базу данных и таблицы или запросы, к которым вы хотите подключиться, а затем нажмите кнопку Загрузить или Изменить.

  5. В Редактор Power Query нажмите кнопку Закрыть & загрузить.

  1. На вкладке ленты Power Query щелкните Из базы данных > из базы данных MySQL.

    Параметры "Из базы данных" Power Query

  2. В диалоговом окне База данных MySQL в поле Имя сервера укажите сервер базы данных MySQL для подключения.

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса на ее языке.

  4. Нажмите кнопку ОК.

  5. Если серверу MySQL требуются учетные данные пользователя базы данных:

    1. В диалоговом окне Доступ к базе данных введите имя пользователя и пароль.

    2. Нажмите кнопку Подключить.

  1. На вкладке ленты Power Query выберите Из других источников > Из Microsoft Exchange.

    Источники данных Power Query

  2. В диалоговом окне Доступ к Exchange Server укажите адрес ипароль Email.

  3. Нажмите кнопку Сохранить.

  4. В диалоговом окне Служба автообнаружения Microsoft Exchange выберите Разрешить , чтобы разрешить службе Exchange доверять вашим учетным данным.

  1. На вкладке ленты Power Query выберите пункты Из других источников > Из Active Directory.

    Получение данных из других источников с помощью Power Query

  2. В диалоговом окне Active Directory введите имя домена.

  3. В диалоговом окне Домен Active Directory выберите команду Использовать текущие учетные данные или Использовать другие учетные данные. В поле Использовать альтернативные учетные данные проверки подлинности введите имя пользователя и пароль.

  4. Нажмите кнопку Подключиться.

  5. После успешного подключения в области Навигатор вы можете просмотреть все домены, доступные в Active Directory, и детализировать данные Active Directory, включая сведения о пользователях, учетных записях и компьютерах.

Предупреждение: 

  • Прежде чем подключиться к базе данных IBM DB2, на компьютере должен быть установлен драйвер IBM DB2 Data Server (минимальное требование — пакет драйвера сервера данных IBM (драйвер DS)). Выберите драйвер, разрядность которого соответствует установленной версии Power Query (32-разрядный или 64-разрядный).

  • Существуют известные проблемы при установке драйвера IBM DB2 Data Server в Windows 8. Если вы используете Windows 8 и хотите подключаться к IBM DB2 с помощью Power Query, вам нужно выполнить дополнительные действия по установке. Дополнительные сведения о драйвере сервера данных IBM DB2 см. в Windows 8.

  1. На вкладке Power Query ленты щелкните Из базы данных > Из базы данных IBM DB2.

    Параметры "Из базы данных" Power Query

  2. В диалоговом окне База данных IBM DB2 в поле Имя сервера укажите сервер базы данных IBM DB2, к которому нужно подключиться.

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса на ее языке.

  4. Нажмите кнопку ОК.

  5. Если для сервера IBM DB2 требуются учетные данные пользователя базы данных:

    1. В диалоговом окне Доступ к базе данных введите имя пользователя и пароль.

    2. Нажмите кнопку Подключить.

Примечание: Прежде чем подключиться к базе данных PostgreSQL в Power Query, на компьютере должен быть установлен поставщик данных Ngpsql для PostgreSQL. Выберите драйвер, соответствующий вашей версии Office (32-разрядная или 64-разрядная). Дополнительные сведения см. в статье Какая версия Office используется? Кроме того, убедитесь, что в конфигурации компьютера зарегистрирован поставщик, соответствующий последней версии .NET на вашем устройстве.

  1. На вкладке ленты Power Query щелкните Из базы данных > Из базы данных PostgreSQL.

    Параметры "Из базы данных" Power Query

  2. В диалоговом окне База данных PostgreSQL укажите сервер базы данных PostgreSQL, к которому нужно подключиться, в разделе Имя сервера .

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса на ее языке.

  4. Нажмите кнопку ОК.

  5. Если для сервера PostgreSQL требуются учетные данные базы данных:

    1. В диалоговом окне Доступ к базе данных введите имя пользователя и пароль.

    2. Нажмите Подключиться.

  1. Перейдите к https://web.powerapps.com/

  2. Выберите Среду , к которой нужно подключиться.

  3. В меню щелкните значок Параметры > Дополнительные настройки > ресурсов разработчика.

  4. Скопируйте значение веб-API экземпляра

    Примечания: 

    • Формат URL-адреса будет примерно таким, какhttps://<tenant>.crm.dynamics.com/api/data/v9.0.

    • Точный формат URL-адреса, который будет использоваться для подключения, зависит от региона и версии CDS для приложений, которые вы используете. Дополнительные сведения см. в статье URL-адрес и версии веб-API (docs.com).

  5. Перейдите на вкладку Данные, а затем — Получить данные > из веб-служб > из Dynamics 365 (в сети).

    • Если вы не видите кнопку Получить данные, нажмите кнопку Создать запрос > из других источников > из Dynamics 365 (в сети).

  6. В диалоговом окне с выбранным параметром Базовый введите URL-адрес веб-API для подключения CDS for Apps и нажмите кнопку ОК.

    • Если выбран параметр Дополнительно , можно добавить в запрос некоторые дополнительные параметры, чтобы управлять возвращаемыми данными. Дополнительные сведения см. в статье Запрос данных с помощью веб-API.

  7. Выберите Учетная запись организации.

    • Если вы не вошли в систему с помощью учетной записи Microsoft Work или School, используемой для доступа к CDS for Apps, щелкните Войти и введите имя пользователя и пароль учетной записи.

  8. Нажмите кнопку Подключить.

  9. В диалоговом окне Навигатор выберите данные, которые нужно извлечь.

  10. Если данные хорошо импортировать как есть, выберите параметр Загрузить, в противном случае выберите параметр Изменить, чтобы открыть Редактор Power Query.

    Примечание: 
    Редактор Power Query предоставляет несколько вариантов изменения возвращаемых данных. Например, может потребоваться импортировать меньше столбцов, чем содержится в исходных данных. В этом случае перейдите на вкладку Главная > Управление столбцами > Выберите столбцы, выберите столбцы, которые нужно сохранить, а затем нажмите кнопку ОК. Когда все будет готово, нажмите кнопку Закрыть & загрузить , чтобы вернуть измененные данные в Excel.

  1. На вкладке ленты Power Query выберите Из базы данных > Из базы данных Teradata.

    Параметры "Из базы данных" Power Query

  2. В диалоговом окне База данных Teradata в поле Имя сервера укажите сервер Teradata для подключения.

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса на ее языке.

  4. Нажмите кнопку ОК.

  5. Если серверу Teradata требуются учетные данные пользователя базы данных:

    1. В диалоговом окне Доступ к базе данных введите имя пользователя и пароль.

    2. Нажмите кнопку Сохранить.

Важно: 
Уведомление о прекращении использования соединителя данных Facebook   Импорт и обновление данных из Facebook в Excel перестанет работать в апреле 2020 г. Вы по-прежнему сможете использовать соединитель Facebook Get & Transform (Power Query) до тех пор, но начиная с апреля 2020 года вы не сможете подключиться к Facebook и получите сообщение об ошибке. Мы рекомендуем как можно скорее пересмотреть или удалить все существующие запросы Get & Transform (Power Query), использующие соединитель Facebook, чтобы избежать непредвиденных результатов.

Примечание: Если вы подключаетесь к Facebook впервые, вам будет предложено указать учетные данные. Войдите, используя свою учетную запись Facebook, и разрешите доступ к приложению Power Query. Вы можете отключить последующие запросы, установив флажок Не предупреждать меня больше об этом соединителе.

  1. На вкладке ленты Power Query щелкните Из других источников > Из Facebook.

  2. В диалоговом окне Facebook подключитесь к Facebook, используя ссылку «Я», имя пользователя или ИД объекта.

    Примечание: Ваше имя пользователя Facebook отличается от адреса электронной почты, используемого при входе.

  3. Выберите нужную категорию из раскрывающегося списка Подключение. Например, выберите Друзья для доступа ко всей своей информации в категории Друзья Facebook.

  4. Нажмите кнопку ОК.

  5. При необходимости нажмите Войти в диалоговом окне Доступ к Facebook, а затем введите адрес электронной почты или номер телефона и пароль. Вы можете установить флажок, чтобы оставаться в службе. После входа нажмите кнопку Подключить.

  6. После успешного подключения вы сможете просмотреть таблицу, содержащую информацию о выбранной категории. Например, если выбрана категория «Друзья», Power Query отображает таблицу, содержащую имена ваших друзей из Facebook.

  7. Нажмите кнопку Загрузить или Изменить.

Для написания формул Power Query можно можете использовать редактор запросов.

= Facebook.Graph("https://graph.facebook.com/v2.8/me/friends")

Редактор Power Query с формулой Facebook

Примечание: 
Редактор запросов отображается только при загрузке, редактировании или создании нового запроса с помощью Power Query. В видео показано окно редактора запросов, которое отображается после изменения запроса в книге Excel. Чтобы просмотреть Редактор запросов без загрузки или изменения существующего запроса книги, в разделе Получение внешних данных на вкладке ленты Power Query выберите Из других источников > пустой запрос. В видео показан один из способов отображения редактора запросов.

Отображение редактора запросов в Excel

Примечания: 

  • Прежде чем подключиться к базе данных SAP SQL Anywhere, на компьютере должен быть установлен драйвер SAP SQL Anywhere . Выберите драйвер, разрядность которого соответствует установленной версии Power Query (32-разрядный или 64-разрядный).

  1. На вкладке ленты POWER QUERY выберите Из базы данных > Из SAP Sybase SQL Anywhere.

    Получение внешних данных из базы данных

  2. В диалоговом окне База данных Sybase укажите сервер Sybase для подключения в поле Имя сервера . При необходимости вы также можете указать имя базы данных.

  3. Если данные нужно импортировать с использованием запроса на языке базы данных, укажите его в поле Инструкция SQL. Дополнительные сведения см. в статье Импорт данных из базы данных с помощью запроса на ее языке.

  4. Нажмите кнопку ОК.

  5. По умолчанию установлен флажок Шифровать подключение, чтобы Power Query подключался к базе данных с помощью простого зашифрованного подключения.

  6. Нажмите кнопку Подключить.

Microsoft Azure Хранилище BLOB-объектов — это служба для хранения больших объемов неструктурированных данных, таких как изображения, видео, аудио и документы, доступ к которым можно получить из любой точки мира по протоколу HTTP или HTTPS. Дополнительные сведения о службе Хранилище BLOB-объектов Azure см. в статье Использование хранилища BLOB-объектов.

  1. На вкладке ленты Power Query выберите Из Azure > из хранилища BLOB-объектов Microsoft Azure.

    Power Query импорт из диалогового окна Azure

  2. В диалоговом окне Microsoft Azure Хранилище BLOB-объектов введите имя или URL-адрес учетной записи хранения Microsoft Azure, а затем нажмите кнопку ОК.

  3. Если вы подключаетесь к службе хранилища BLOB-объектов в первый раз, вам будет предложено ввести и сохранить ключ доступа к хранилищу. В диалоговом окне Доступ к хранилищу BLOB-объектов Microsoft Azure введите ключ доступа к хранилищу в поле Ключ учетной записи и нажмите кнопку Сохранить.

    Примечание: Если вам нужно получить ключ доступа к хранилищу, перейдите на порталMicrosoft Azure, выберите учетную запись хранения и щелкните значок Управление ключом доступа в нижней части страницы. Щелкните значок копирования справа от первичного ключа и вставьте значение в поле Ключ учетной записи .

  4. В редакторе запросов будет выведен список всех доступных контейнеров в хранилище BLOB-объектов Microsoft Azure. На панели Навигатор выберите контейнер, из которого требуется импортировать данные, а затем нажмите кнопку Применить и закрыть.

  1. На вкладке ленты POWER QUERY выберите Из Azure > из Microsoft Azure HDInsight.

    Получение внешних данных из Azure

  2. В диалоговом окнеMicrosoft Azure HDInsight введите имя учетной записи и нажмите кнопку ОК.

  3. Затем введите ключ учетной записи и нажмите кнопку Подключить.

    Примечание: Если вам нужно получить ключ, вернитесь на порталMicrosoft Azure, выберите учетную запись хранения и щелкните значок Управление ключом доступа в нижней части страницы. Щелкните значок копирования справа от первичного ключа и вставьте значение в мастер.

  4. Выберите кластер в диалоговом окне Навигатор , а затем найдите и выберите файл содержимого.

  5. Нажмите кнопку Загрузить , чтобы загрузить выбранную таблицу, или нажмите кнопку Изменить , чтобы выполнить дополнительные фильтры и преобразования данных перед загрузкой.

Если вы являетесь разработчиком, в Excel есть несколько подходов, которые можно использовать для импорта данных:

  • Для получения доступа к внешнему источнику данных можно использовать Visual Basic для приложений. В зависимости от источника данных для получения данных можно использовать объекты данных ActiveX или Объекты доступа к данным. Вы также можете определить в коде строку подключения, указывающую сведения о подключении. Использовать строку подключения полезно, например, если вы хотите избежать необходимости требовать от системных администраторов или пользователей сначала создать файл подключения или упростить установку приложения.

  • При импорте данных из базы данных SQL Server рассмотрите возможность использования собственного клиента SQL, который представляет собой автономный api для доступа к данным, который используется как для OLE DB, так и для ODBC. Он объединяет поставщик SQL OLE DB и драйвер SQL ODBC в одну собственную библиотеку динамической компоновки (DLL), а также предоставляет новые функции, отличные от компонентов доступа к данным Майкрософт (MDAC). Собственный клиент SQL можно использовать для создания новых приложений или улучшения существующих приложений, которые могут использовать преимущества новых функций SQL Server, таких как несколько активных результирующих наборов (MARS), User-Defined типов (UDT) и поддержка типов данных XML.

  • Функция RTD извлекает данные в режиме реального времени из программы, которая поддерживает автоматизацию COM. Надстройка ДРВ автоматизации COM должна быть создана и зарегистрирована на локальном компьютере.

  • The SQL. Функция REQUEST подключается к внешнему источнику данных и выполняет запрос с листа. The SQL. Затем функция REQUEST возвращает результат в виде массива без необходимости программирования макросов. Если данная функция недоступна, установите надстройку Microsoft Excel ODBC (XLODBC.XLA). Надстройку можно установить из Office.com.

Дополнительные сведения о создании Visual Basic для приложений см. в справке по Visual Basic.

См. также

Справка по Power Query для Excel

Импорт данных из базы данных с помощью запроса на ее языке

Использование нескольких таблиц для создания сводной таблицы

Импорт данных из базы данных в Excel для Mac

Получение данных (docs.com)

To Parse Custom JSON data is to split out its name/value pairs into a more readable useable format.

Excel is a powerful tool that allows you to connect to JSON data and read it.  However sometimes this data might require a little manipulation to be fully understood and analysed in Excel. 

In this article you will learn

  • What is JSON Data
  • To Connect to JSON data from Excel
  • How to Parse simple JSON Data using Excels Power Query
  • To Parse complex JSON Data using Excels Power Query

This article contains data tables to download so you can practice along and master the art of parsing custom JSON data using Excel.  We are also powered with STEEM so you can earn while you learn 😊.  If you are not familiar with Excel Power Tools you can find out about them here.

What is JSON Data?

JSON data is a way of representing objects or arrays.  It is easy to read, and it is easy to parse, even with Excel.  Many API calls will return JSON format and many web apps use JSON which easily moves information around the internet.

The syntax for JSON comes from JavaScript and can be summarized as follows:

  • Data is shown in name/value pairs separated by : For example “name” : ”paulag”
  • Data is separated by commas. For Example “name” : ”paulag” , “Sex” : “Female”
  • Curly brackets represent an object. An object being a name/value pair separated by a comma. For Example {“name” : ”paulag” , “Sex” : “Female”}
  • Square brackets hold arrays and contains a list of values separated by a comma.

Look at the sample JSON in the image below

How to Parse Custom JSON Data using Excel

{“total_population”: This shows the first object, which is a name/value pair.  The name of the object is total_population

[{“date”: “2019-01-02”, “population”: 7638335801}, {“date”: “2019-01-03”, “population”: 7638557789}]}  This is the value for the total population. The [ represents an array.  This array contains two objects. The objects are defined within the curly brackets and separated with a comma. Each object contains 2 lots of data (name/value pair) also separated with a comma.  The data, shown in the name/value pairs, in this example is date and population.

Here is one you can look at yourself. https://api.coinmarketcap.com/v1/ticker/bitcoin/

If you enter this to your browser, you will get something like the below:

excel JSON

Let’s take a look at that image in more detail.

Connecting to JSON data from Excel

In Excels Data ribbon, under GET and Transform Data, we have the option of connecting to data of multiple sources and multiple types. 

If we select Get data from file, we will then have the option to get data from a JSON file. 

In this example we have URL API endpoint https://api.coinmarketcap.com/v1/ticker/bitcoin/.  Therefore, from the Data Ribbon we can select, Get data from Web.  This will open a dialogue box in which you place the URL.

Next, Power query will then open.  Power query is a magic excel tool that will allow you transform data that you connect to into a usable format.

The JSON data will appear as a list of records Power Query. For excel to read this, we must convert a list to a table. Select ‘to table’ from the available option.

Next, Power query will create a table and you will see this step appear on the right of the power query window under applied steps. 

This new table contains a record. We must expand this record to get the value pairs. As this record only has 1 row, we would expect this to expand across the columns.  To do this, right click on the arrows in the column header.

This will reveal the names of the value pairs.  By selecting ok a new column will be set up in the table.  The name will be in the header and the value in the row.  

Further transformations

If we wanted this data going down the row, we could Unpivot the columns.  By selecting the id column.  Then from the Transform ribbon select the dropdown for unpivot columns and select unpivot other columns. 

When working with Power Query, it’s important to make sure you have the correct data types set.  To work with this data, we must now move to from Power Query to Excel.  If we select File, and then select Close and load, this will load the data as a table in Excel.  Or, if we select or Close and Load to, the data will be loaded into a Power Pivot Model.  

How to Parse JSON Data in Excel

Very often when you access JSON data with Excel it appears in 1 column.  This can happen for many reasons and is often the design of a database.

Look at the image below.  We can see the json_metadata field is still in its JSON syntax

How to Parse Custom JSON Data using Excel

When we encounter data like this, we can easily parse the column into its components.  From the image below we see we have 4 components. We have An Array, an Object, the data, and one of the data fields contains an array.

How to Parse Custom JSON Data using Excel

STEP by STEP

Download this file.  It contains a table as shown below.  (do not copy and paste the table as the JSON field will not be recognised.) 

tx_id

tid

json_metadata

timestamp

647524676

follow

[“follow”,{“follower”:”mervin-gil”,”following”:”jarvie”,”what”:[“blog”]}]

43466.89097

647524682

follow

[“follow”,{“follower”:”steliosfan”,”following”:”michealb”,”what”:[“blog”]}]

43466.89097

647524833

follow

[“follow”,{“follower”:”eugenezh”,”following”:”zentricbau”,”what”:[“blog”]}]

43466.89097

647524855

follow

[“follow”,{“follower”:”bitcoinportugal”,”following”:”manuellevi”,”what”:[]}]

43466.89097

647525074

follow

[“follow”,{“follower”:”eugenezh”,”following”:”adriellute”,”what”:[“blog”]}]

43466.89167

647525089

follow

[“follow”,{“follower”:”bigbigtoe”,”following”:”hoxly”,”what”:[“blog”]}]

43466.89167

647525121

follow

[“follow”,{“follower”:”mervin-gil”,”following”:”loveon”,”what”:[“blog”]}]

43466.89167

647525159

follow

[“follow”,{“follower”:”mervin-gil”,”following”:”pechichemena”,”what”:[“blog”]}]

43466.89167

647525233

follow

[“follow”,{“follower”:”imealien”,”following”:”pataty69″,”what”:[“blog”]}]

43466.89167

647525652

follow

[“follow”,{“follower”:”mervin-gil”,”following”:”kamile”,”what”:[“blog”]}]

43466.89236

647525818

follow

[“follow”,{“follower”:”bitcoinportugal”,”following”:”drmake”,”what”:[“blog”]}]

43466.89236

647525886

follow

[“follow”,{“follower”:”mervin-gil”,”following”:”bradfordtennyson”,”what”:[“blog”]}]

43466.89236

647525980

follow

[“follow”,{“follower”:”a0i”,”following”:”shoemanchu”,”what”:[“blog”]}]

43466.89236

647526007

follow

[“follow”,{“follower”:”voteme”,”following”:”kostyantin”,”what”:[“blog”]}]

43466.89236

648215552

follow

[“follow”,{“follower”:”ansie”,”following”:”hoxly”,”what”:[“blog”]}]

43467.75833

648215582

follow

[“follow”,{“follower”:”ashokcan143″,”following”:”abcor”,”what”:[]}]

43467.75833

648215691

follow

[“follow”,{“follower”:”ashokcan143″,”following”:”abasinkanga”,”what”:[]}]

43467.75903

648215820

follow

[“follow”,{“follower”:”nongvo.piy”,”following”:”acidyo”,”what”:[]}]

43467.75903

648215859

follow

[“follow”,{“follower”:”grid9games”,”following”:”yeninsfer”,”what”:[“blog”]}]

43467.75903

648215945

follow

[“follow”,{“follower”:”nongvo.piy”,”following”:”acidyo”,”what”:[“blog”]}]

43467.75903

Click on any of the cells that contain the data and from the Data Ribbon select FROM Table/Range

How to Parse Custom JSON Data using Excel

If your data is not in table format, Excel will then prompt you to create a table.  Select the cells the contain the data and tick the box to say that your table has headers.

How to Parse Custom JSON Data using Excel

Power Query editor window will open. On the canvas you can see your data and, on the right, you can see any transformation steps that have taken place.

How to Parse Custom JSON Data using Excel

To parse the json column, first select the column, then on the Transform Ribbon select Parse and select JSON

How to Parse Custom JSON Data using Excel

Power query will recognise the first [ and create a list format.  Next, we need to expand this list to new rows.  To do this click on the arrows on the top of the column and select Expand to New Rows.

How to Parse Custom JSON Data using Excel

What is returned is two lines for each tx-id.  The json column now has a row for the name of the array, which is follow, and a record.  The record will contain the data.

How to Parse Custom JSON Data using Excel

As we do not need the name of the array, we can use the filter to remove all the follow rows

How to Parse Custom JSON Data using Excel

We are now left with the records. We can expand this record, by pressing the arrow on the column.  From here we see we have the names of 3 data fields, Follower, Following and What

How to Parse Custom JSON Data using Excel

When we select OK, we get a new column in our data table for each data field.

However, the field named what contains an array, which is again shown as a list (or array) which needs to be expanded

How to Parse Custom JSON Data using Excel

Once we expand this, we are at the end of the JSON data and have extracted the relevant columns.  You can now use this data for further analysis in Excel or Power Pivot.  To load it back to excel, select File and Close & Load.

How to Parse Custom JSON Data using Excel

More complex JSON data extractions in Excel

So far, we have looked at getting JSON data into Power Query using an Excel table and directly from a URL.  There are other ways you can connect to JSON data including connecting directly to a JSON file.  Connecting is the easy part.  Things get more complicated when you have JSON columns where the strings are different in each row.  One might start with an array and so return a list, but some might start with an object and return a record.  

In Power Query lists are expanded to new rows in the table and records are expanded to new columns. Parsing custom JSON data in Excel can require some thinking.

Power Query умеет подключаться не только к web страничкам, но и к API, не требующим авторизации. Если API позволяет анонимным пользователям забирать данные, Power Query подойдёт идеально.  

Подключимся к API застройщика, чтобы отслеживать актуальную стоимость квартиры. Находим нужную квартиру на сайте застройщика: https://beta.pik.ru/flat/801472.

«https://api.pik.ru/v1/flat?id=» — URL адрес, по которому застройщик предоставляет информацию, а «801472» – идентификатор квартиры.

Информация на сайте показана красиво, но разбросана по разным вкладкам.
Мы же хотим получить лаконичную табличку в Excel:

Адрес
Стоимость
Скидка
Заселение до
Площадь
Комнаты
Этаж
Ссылка
PDF

GET-запрос к API ПИК на Power Query

Для разнообразия воспользуюсь Power Query в Excel. Создаем пустой запрос:

В строке формул пишем: 

Json.Document(Web.Contents("https://api.pik.ru/v1/flat?id=801472"))

В результате получаем строку с вложенными составными элементами, которые также могут содержать вложенные элементы:

Называем запрос «getData_oneFlat» и вставляем пустой шаг после шага Источник (чтобы открыть меню — щелкаем правой кнопкой мышки на шаг Источник):

С помощью функции Record.FromList формируем строку с нужными данными, используя шаг Источник. В строке формул пишем: 

Record.FromList(
{Источник[block][address], Источник[price], Источник[discount], Источник[bulk][date_till], Источник[area], Источник[rooms], Источник[floor], Источник[url], Источник[pdf]}, 
type [ Адрес = text, Стоимость = number, Скидка = number, Заселение до = text, Площадь = number, Комнаты = number, Этаж = number, Ссылка = text, PDF = text])

Давайте разбираться как работает функция Record.FromList:

  1. Первый аргумент функции отвечает за содержимое полей – это список: 
    {Источник[block][address], Источник[price]}
  2. Источник[price] – возвращает содержимое поля price
  3. Источник[block][address] – возвращает содержимое поля address из Record вложенной в поле block
  4. Второй аргумент отвечает за названия и тип полей – это строка: 
    type [Адрес = text, Стоимость = number]

Результат — строка нужных нам значений:

Преобразуем строку в таблицу:

Выгрузим результат на лист Excel и посмотрим что получилось:

Такой формат нас устроит, теперь мы видим всю информацию по квартире в удобной таблице. 

Несколько GET-запросов с помощью функции

Теперь попробуем забрать сразу несколько квартир и разместить их в одной табличке. 

Для этого убираем последний шаг и создаём функцию getData от параметра flat (номер квартиры), заменяя сам номер на «flat»:

(flat as text)=>
let
   Источник = Json.Document(Web.Contents("https://api.pik.ru/v1/flat?id="& flat )),
   create_table = Record.FromList(
{Источник[block][address], 
Источник[price], 
Источник[discount], 
Источник[bulk][date_till], 
Источник[area], 
Источник[rooms], 
Источник[floor],
Источник[url],
Источник[pdf]
},
type [
Адрес = text, 
Стоимость = number, 
Скидка = number, 
Заселение до = text, 
Площадь = number, 
Комнаты = number, 
Этаж = number,
Ссылка = text,
PDF = text
])
in
   create_table

Теперь наша функция будет получать данные по той квартире, которую мы укажем в параметре.

Составляем на листе Excel список интересных нам квартир:

Загружаем список квартир в Power Query, выставляем столбцу текстовый тип. Затем добавляем новый столбец с вызовом нашей функции от каждой квартиры в списке, получается такой код:

let
   Источник = Excel.CurrentWorkbook(){[Name="Таблица2"]}[Content],
   #"Измененный тип" = Table.TransformColumnTypes(Источник,{{"Получаемые квартиры", type text}}),
   #"Вызвана настраиваемая функция" = Table.AddColumn(#"Измененный тип", "getData", each getData([Получаемые квартиры]))
in
   #"Вызвана настраиваемая функция"

Таблица в Power Query выглядит так:

Нажимаем на стрелочки справа от «getData» и разворачиваем нужные столбцы, а затем выгружаем всё на лист Excel. Теперь у нас есть табличка со стоимостью, скидками, площадью и датами заселения для всех интересных нам объектов:

Заключение

Пример вызова API сайта компании ПИК показывает как Power Query может быть полезен в бытовых задачах. Используйте PQ если вам нужно быть в курсе изменений данных, будь то стоимость квартиры или цена товара в интернет-магазине. 

Если компания предоставляет данные по открытому API, вы всегда можете использовать магию Power Query и вывести эти данные себе в Excel-файл. Можно сравнить несколько товаров/категорий или вообще написать алгоритм, который будет отображать только самые интересные товары. 

Excel is probably one of the most used tools in this world, so the demand for integrations with extremely complex spreadsheets is a recurring scenario. APIs allow easy access to information in systems, which is becoming more and more standard in the market, with that in mind, some demands of connecting to systems via API in Excel are necessary and very useful, so I decided to share a little how I created this integration. Let’s learn how to query Rest APIs using VBA and convert the result to JSON for use in the spreadsheet.

This article hopes you will know the basics of Excel and VBA, as well as what is an API and how it works . Our goal will be to consult a Public Pokemon API and list the result in the tab results .

Creating a blank worksheet

First let’s create a blank sheet with macro enabled, inside it I’ll create a tab called results .

Excel spreadsheet

Creating the macro to query the API

by shortcut alt + f11 let’s open the Excel macro editor, and create a module called list pokemons .

Macro VBA

Importing the VBA-JSON library

As the API we’re going to query returns a JSON as an answer we will need to import the library VBA JSON , it will take care of all the boring work of translating the JSON and returning as an array and object. Installation is very simple, just download the latest version here and in the macro editor go to File > Import File > JsonConverter.bas .

Import VBA JSON

Enabling Microsoft Scripting Runtime

We also need to enable Microsoft Scripting Runtime, to do this just browse Tools > References and search and enable in the list the Microsoft Scripting Runtime .

Excel API Rest Microsoft Scripting Runtime

Creating the VBA macro to query the REST API

Below is the complete code for our request, it might sound scary, but don’t worry, I’ll explain what each part is doing:

Sub listPokemons()
Dim json As String
Dim jsonObject As Object, item As Object
Dim i As Long
Dim ws As Worksheet
Dim objHTTP As Object

'We selected our results sheet
Set ws = Worksheets("results")

'We create our request object and send
Set objHTTP = CreateObject("WinHttp.WinHttpRequest.5.1")
URL = "https://pokeapi.co/api/v2/pokemon"
objHTTP.Open "GET", URL, False
objHTTP.Send
strResult = objHTTP.responseText
json = strResult

Set objectJson = JsonConverter.ParseJson(json)

'We create the header cells
ws.Cells(1, 1) = "name"
ws.Cells(1, 2) = "link"

'We loop the results property of the API response
i = 2 'We will start the counter on line 2
For Each pokemon InJsonObject("results")
    ws.Cells(i, 1) = pokemon("name")
    ws.Cells(i, 2) = pokemon("url")
    i = i + 1
next

End Sub

First we define all the variables that we will use in our scripts, including the VBA JSON library import that we previously imported into our project.

Dim json As String
Dim jsonObject As Object, item As Object
Dim i As Long
Dim ws As Worksheet
Dim xmlhttp As Object
Set xmlhttp = CreateObject("MSXML2.serverXMLHTTP")
Dim objHTTP As Object

Then we select the spreadsheet we want to display the results of the API query, in our case Worksheets("results") and then we create an object that will allow us to make the request to the API. https://pokeapi.co/api/v2/pokemon . We’ll take the answer and put it in the variable json , for now it is nothing more than a text.

'We selected our results sheet
Set ws = Worksheets("results")

'We create our request object and send
Set objHTTP = CreateObject("WinHttp.WinHttpRequest.5.1")
URL = "https://pokeapi.co/api/v2/pokemon"
objHTTP.Open "GET", URL, False
objHTTP.Send
strResult = objHTTP.responseText
json = strResult

Here where the magic happens, the function parsejson from the VBA JSON library converts the text of our variable json for an accessible object in our script. We are now able to access all properties programmatically in our code.

Set objectJson = JsonConverter.ParseJson(json)

Now that we have the result of our API accessible, we create in the first row of the spreadsheet the header containing the columns Name and link .

'We create the header cells
ws.Cells(1, 1) = "name"
ws.Cells(1, 2) = "link"

Now before analyzing the script we need to understand the result of the API. If you open the link https://pokeapi.co/api/v2/pokemon in your browser you will see the following result:

{
  "count": 964,
  "next": "https://pokeapi.co/api/v2/pokemon?offset=20&limit=20",
  "previous": null,
  "results": [
    {
      "name": "bulbasaur",
      "url": "https://pokeapi.co/api/v2/pokemon/1/"
    },
    {
      "name": "ivysaur",
      "url": "https://pokeapi.co/api/v2/pokemon/2/"
    },
    {
      "name": "venusaur",
      "url": "https://pokeapi.co/api/v2/pokemon/3/"
    },
    {
      "name": "charmander",
      "url": "https://pokeapi.co/api/v2/pokemon/4/"
    },
    {
      "name": "charmeleon",
      "url": "https://pokeapi.co/api/v2/pokemon/5/"
    },
    {
      "name": "charizard",
      "url": "https://pokeapi.co/api/v2/pokemon/6/"
    },
    {
      "name": "squirtle",
      "url": "https://pokeapi.co/api/v2/pokemon/7/"
    },
    {
      "name": "wartortle",
      "url": "https://pokeapi.co/api/v2/pokemon/8/"
    },
    {
      "name": "blastoise",
      "url": "https://pokeapi.co/api/v2/pokemon/9/"
    },
    {
      "name": "caterpie",
      "url": "https://pokeapi.co/api/v2/pokemon/10/"
    },
    {
      "name": "metapod",
      "url": "https://pokeapi.co/api/v2/pokemon/11/"
    },
    {
      "name": "butterfree",
      "url": "https://pokeapi.co/api/v2/pokemon/12/"
    },
    {
      "name": "weedle",
      "url": "https://pokeapi.co/api/v2/pokemon/13/"
    },
    {
      "name": "kakuna",
      "url": "https://pokeapi.co/api/v2/pokemon/14/"
    },
    {
      "name": "beedrill",
      "url": "https://pokeapi.co/api/v2/pokemon/15/"
    },
    {
      "name": "pidgey",
      "url": "https://pokeapi.co/api/v2/pokemon/16/"
    },
    {
      "name": "pidgeotto",
      "url": "https://pokeapi.co/api/v2/pokemon/17/"
    },
    {
      "name": "pidgeot",
      "url": "https://pokeapi.co/api/v2/pokemon/18/"
    },
    {
      "name": "rattata",
      "url": "https://pokeapi.co/api/v2/pokemon/19/"
    },
    {
      "name": "raticate",
      "url": "https://pokeapi.co/api/v2/pokemon/20/"
    }
  ]
}

We are interested in the property. results , an array containing a list of pokemons with their names and links to more details. We will access this matrix at jsonobject("results") and we will loop to display each pokemon result in a new row of our table.

'We loop the results property of the API response
i = 2 'We will start the counter on line 2
For Each pokemon InJsonObject("results")
    ws.Cells(i, 1) = pokemon("name")
    ws.Cells(i, 2) = pokemon("url")
    i = i + 1
next

If everything goes as expected, by pressing f5 to run our macro, in your spreadsheet you should see the following result:

Excel API Rest

Conclusion

This was a very simple example of a query, with the object of HT TP it is possible to perform all types of requests, GET, POST, UPDATE, … The interesting thing is to understand how the request is made and how you can display the result, thanks to the VBA JSON library, which already drastically reduces the work required. Now you just need to adapt this flow and script to your needs.

3.7
6
votos

Nota do Artigo

16 Aug How to Import JSON to Excel Using VBA

Posted at 13:26h
in Excel VBA
12 Comments

Howdee! It’s becoming increasingly more common for data to be generated in a JSON format as opposed to XML. XML was widely used for years, but recently JSON has started to become the preferred method of data exchange. Many REST APIs have the option to return both but the majority that I interact with default to returning JSON formatted data. Therefore, as excel ninjas, it’s important to understand how to import JSON to Excel for analysis. Before we begin on that route, let’s take a quick moment to talk about what JSON is for those that aren’t familiar with it.

Curious how to do this in VSTO? Click Here!

What is JSON?

JSON stands for JavaScript Object Notation and is a lightweight data-interchange format. In layman’s terms, it is a string of text that represents a universal data structure. It is easy for humans to read (when formatted properly) and, because of the universal structure, it is very easy and fast for machines to parse and generate. It’s made simple because JSON, at it’s most basic, is only two data types. It is made up of objects, or arrays, or a combination of both. Objects are made up of key/value pairs (often called a dictionary) and arrays are simply collections of values or objects separated by a comma.

It’s important to note that object/dictionary and array are the terminology applicable to the .NET language. Other languages might have other terminology such as hash table for object, or vector for an array. This site gives a great high level, cross-language overview of JSON.

JSON Object

A JSON object always begins with { and ends with }. The key is separated from its value with a colon (“:”). The key/value pairs will then be separated by commas all within the curly brackets. In the image below, the first key “color” corresponds to its value “red”, while the second key “value” corresponds to the red hex code “#f00”. Hopefully you can see why this might be called a dictionary as you look up the key (word to define) to get its value (definition of the word).

import json to excel

JSON Array

A JSON array, in its simplest form, is a list of values separated by a comma that begins with [ and ends with ]. In the below image, the JSON array is a list of string data points. We can see that they are colors but there is no key in this example explicitly telling that this string represents a color. Therefore, JSON is most commonly seen as a combination of arrays and objects.

import json to excel

JSON Objects & Arrays Together

Most of the time, JSON is returned as an array of objects. If you recall, an object always begins and ends with curly brackets. Therefore, the array of objects would have several objects enclosed in curly brackets that are separated by commas and all objects are enclosed in normal brackets (the array). That looks like this image:

import json to excel

In this example, each object represents a color and its corresponding hex code. In Excel, this would likely be two columns of data. One column for color, and the other for its hex code value. Now that you’re more familiar with JSON data structure, let’s learn how to import JSON to Excel!

Setup JSON to Excel

There are several libraries out there to help you import JSON to Excel. The most popular of these is VBA-JSON which is available here on GitHub. This library will do most of the hard work of parsing the JSON string to a dictionary for you and then you can write the values to an excel worksheet. When you download the latest release, you’ll need to import the “JsonConverter.bas” file to your VBA project. This GIF shows how that is accomplished. You will also need to add a  reference to the “Microsoft Scripting Runtime” by clicking tools from the ribbon, selecting references and checking the box for Microsoft Scripting Runtime as shown in the screen grab.

Once you have completed both steps, insert a new module into your project and title it whatever you like. To get started, we need to dimension some variables to use later.

Dim ws As Worksheet
Dim jsonText As String
Dim jsonObject As Object

The ws variable will represent a worksheet in excel. In this example, we will use this worksheet to both read in our JSON string from and write the parsed JSON to Excel. To assign a worksheet to this variable, set it like this:

Set ws = Worksheets("JSON to Excel Example")

The jsonText variable will represent our string of valid JSON data. For this example, I’ve pasted that string of colors and hex codes we looked at earlier into cell A1 on the JSON to Excel Example tab. To assign that string to a variable, type this code:

jsonText = ws.Cells(1, 1)

This step is not necessary for the code to work for us. We could simply reference the cell in the worksheet that contains the JSON. However, most of the time you’ll be returning your JSON string from another data source, most likely a HTTP GET Web Call. If you’re not familiar with HTTP Requests in VBA, click here to learn more.

Lastly, to put the JSON string into the jsonObject, we will use one of the methods contained in the JsonConverter file you imported to begin this example. Since the builder of this library made all of the subroutines public, it is callable from the module this code is in. That call looks like this:

Set jsonObject = JsonConverter.ParseJson(jsonText)

This call instructs the JsonConverter module to parse the JSON string you’ve passed it using the jsonText variable to a collection of dictionaries that we can now access. Now that we’ve finished our setup, we can start learning to import JSON to Excel in the next section.

Import JSON to Excel

The code to import JSON to Excel might sound daunting, but it is much easier than it sounds. At a high level, all you have to do is loop through the jsonObject you’ve created, and write each dictionary value to the sheet. The wonderful thing about dictionaries, is this is easy to do with a for each loop. I’ve added a couple of variables and a for each loop to our code and the result is this:

Sub JsonToExcelExample()
Dim jsonText As String
Dim jsonObject As Object, item As Object
Dim i As Long
Dim ws As Worksheet

Set ws = Worksheets("JSON to Excel Example")

jsonText = ws.Cells(1, 1)

Set jsonObject = JsonConverter.ParseJson(jsonText)

i = 3

ws.Cells(2, 1) = "Color"
ws.Cells(2, 2) = "Hex Code"

For Each item In jsonObject
    ws.Cells(i, 1) = item("color")
    ws.Cells(i, 2) = item("value")
    i = i + 1
Next

End Sub

I set a counter variable, i, that I can use to tell the loop which row to write the data to. Next, create my column headers for the data. Then, for each “item” in the jsonObject write that dictionaries values to the cell row I indicate and increment my counter variable. That’s it! The results of our import JSON to Excel code looks like this:

import json to excel

As you can see, we’ve turned that odd-looking string of text in cell A1 to an easy to understand table of data with just a few lines of code!

Understanding JSON to Excel (Advanced)

Now, I do want to point out that understanding the structure of the JSON you’ll be parsing is very important. Within the for each loop, the code can access the value of each object by referencing its key. This goes back to understanding the key/value pair relationship of JSON and the dictionary structure to which it is parsed. The reason I stress this so much is because, when you’re pulling back more complex looking JSON, you may need to have multiple levels of dictionary references to access the value you want. There may also be times when you have to nest for loops when you have an array of objects with arrays of objects nested inside each object.

For example, let’s look at an example where the JSON is structured as a single object with key “data” and the value is an array of data about employee’s and their organizations:

import json to excel

As you can see, we have an object with an array nested inside. Some objects in the array contains other nested objects as well. This multi-tiered data structure is very common when pulling data from a REST service and was very confusing to me when I first began trying to import JSON to Excel. Let’s examine what the code looks like for this scenario before we dive any deeper.

Sub JsonToExcelAdvancedExample()
Dim jsonText As String
Dim jsonObject As Object, item As Object
Dim i As Long
Dim ws As Worksheet

Set ws = Worksheets("JSON to Excel Advanced Example")

jsonText = ws.Cells(1, 1)

Set jsonObject = JsonConverter.ParseJson(jsonText)

i = 3

ws.Cells(2, 1) = "id"
ws.Cells(2, 2) = "Name"
ws.Cells(2, 3) = "Username"
ws.Cells(2, 4) = "Email"
ws.Cells(2, 5) = "Street Address"
ws.Cells(2, 6) = "Suite"
ws.Cells(2, 7) = "City"
ws.Cells(2, 8) = "Zipcode"
ws.Cells(2, 9) = "Phone"
ws.Cells(2, 10) = "Website"
ws.Cells(2, 11) = "Company"

For Each item In jsonObject("data")
    ws.Cells(i, 1) = item("id")
    ws.Cells(i, 2) = item("name")
    ws.Cells(i, 3) = item("username")
    ws.Cells(i, 4) = item("email")
    ws.Cells(i, 5) = item("address")("street")
    ws.Cells(i, 6) = item("address")("suite")
    ws.Cells(i, 7) = item("address")("city")
    ws.Cells(i, 8) = item("address")("zipcode")
    ws.Cells(i, 9) = item("phone")
    ws.Cells(i, 10) = item("website")
    ws.Cells(i, 11) = item("company")("name")
    i = i + 1
Next

End Sub

The code overall is the exact same, just referencing a different tab and added more fields to pull out. The change I want to point out is to the for loop itself. The beginning of the for loop now starts by referencing the overall object that contains the array. This is referred to as the “root” of the JSON and you’ll see it if you’re querying a REST API for JSON data. This moves the for each loop inside the “data” level of the JSON and will now loop through all objects in the highest-level array. Had I left this out, the loop would only occur once as the JSON is all contained within a single object at its top level.

The second piece I want to point out is the lines for address and company. These are both objects contained within the parent object. So, in order for me to reach to value I want, I have to reference both keys to get the specific value I need. Lastly, I want to call out that you do not need to write every value from the returned JSON to the sheet. I have skipped over several fields to get the end result I desired and it does not affect my code results, which coincidently look like this:

import json to excel

I hope this brief explanation of how to import JSON to Excel was useful for you! Please let me know if it was helpful or if you have any questions in the comments below. Also, if you want to download the file with the example JSON and VBA code, you can do so here if you’re a free subscriber to the site. It’s free, easy, and only takes a moment to sign up.

Cheers!

R

Понравилась статья? Поделить с друзьями:
  • Json в excel что это
  • Json to xml excel
  • Json to excel offline
  • Json to excel converter скачать
  • Json to excel 2016