Обновление Power Query 1-го и 2-го порядка - PullRequest
0 голосов
/ 17 июня 2020

У меня есть 4 книги Excel, подключенные с помощью Excel Power Query в Excel 2016. Я собираюсь дать ссылку на каждую книгу как A, B, C и D для облегчения чтения и понимания.

Контекст:

Книги A и B являются исходными книгами, в которых пользователи вводят данные в объекты таблиц. Важно отметить, что эти книги подключаются к другой внешней книге с помощью подключения Power Query, а также содержат традиционные ссылки (в том смысле, что ячейка равна другой ячейке в другой книге) и на другие книги.

Рабочая книга C - это «сводная» рабочая книга, которая подключается как к A, так и к B, добавляет эти подключения и выводит данные в сводные таблицы.

Книга D - это книга, которая подключается к книге C с помощью Power Query.

Я включил схему c ниже:

enter image description here

Цель:

Мне нужно обновить sh соединение запроса в книге D, которое будет извлекать последние данные из книг A и B .

Текущее исследование / тестирование:

Согласно моим текущим исследованиям и тестированию, кажется, что запрос refre sh является только 1-м порядком, т.е. обновлением запроса в книге D будет извлекать последние данные из книги C, но не из книг A и B. Пользователь должен будет открыть книгу C и обновить sh запросы, сделанные к книгам A и B, а затем только обновить sh книгу D. Текущий VBA:

Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False

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

ActiveWorkbook.UpdateLink Name:="C:\Users\deadevil\Desktop\Test1.xlsx", Type:=xlExcelLinks

Абсолютная работа на данный момент заключается в том, чтобы создайте VBA, который открывает книги A и B и обновляется соответствующим образом, когда пользователь хочет обновить sh книгу D. Я рад создать это, но надеюсь, что кто-то с более глубоким пониманием Power Query найдет лучший подход!

Есть ли способ получить эту refre sh функциональность «2-го порядка»?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...