Как вызвать функцию Power Query M из внешней книги?

480
KarmaEDV

Если у меня есть книга Excel, доступная в Интернете, и эта книга содержит несколько таблиц и некоторые функции Power Query M, возможно ли вызвать эти функции из другой книги?

Я знаю, как загрузить рабочую книгу, Excel.Workbook(Web.Contents("url"))но в ней перечислены только доступные таблицы и таблицы, но нет доступных функций.

Моя рабочая книга общедоступна, и я хочу получить доступ к функциям без специального разрешения.

2

1 ответ на вопрос

0
Alejandro Lopez-Lago - MSFT

Это не поддерживается Тем не менее, вы можете хранить ваши M-скрипты в текстовом файле и запускать их.

  1. Скопируйте содержимое запроса (из расширенного редактора) в файл.
  2. Используйте это, чтобы получить доступ к содержимому этого файла: = Text.FromBinary(File.Contents("path to your file")). Давайте назовем этот шаг Source.
  3. Используйте Expression.Evaluate(Source, #shared)для оценки этого запроса. Expression.Evaluateбудет интерпретировать текстовое значение как код. #sharedсодержит список всех запросов, функций и констант в вашем коде; однако он не содержит шагов вашего текущего запроса.

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

Похожие вопросы