У меня есть Power Query, установленный в myexcel.xlsx. Я установил свойства своих соединений как this и this.Автоматическое обновление подключения к источнику питания через VBA
Я написал код VBA, как следующего
Sub UpdateData()
Dim filename As String
Dim wbResults As Workbook
filename = "C:\myexcel.xlsx"
Set wbResults = Workbooks.Open(filename)
ActiveWorkbook.RefreshAll
wbResults.Close savechanges:=True
End Sub
Когда я открыть myexcel.xslx вручную, обновление подключения питания запросов. Но через код VBA это не так. Я должен добавить, что я тестировал это со старомодным Excel Connection, и он отлично работает через код VBA. Но проблема связана с подключениями Power Query. Есть предположения?
Я бы не предложил использовать метод RefreshAll, ВСЕ, КОГДА-ЛИБО! Просто потому, что в моей книге у меня будет более 300 запросов, если мы случайно удалим обновление, компьютер будет разбиваться. Вы можете обновить запрос по его имени или если запрос начинается с определенных символов. Если у вас есть ваши запросы, подобные мне и использующие соглашение об именах, вы можете обновить запросы «grp1_Qry_1», «grp1_Qry_2» и т. Д., Вы можете - например: обновить все quereis, которые начинаются с «grp1_». Гораздо лучше, чем обновлять все запросы. Маленькие подсказки * вопросы с запросами на подключение начинаются с «Query -» ... См. Мой ответ :) –