Страницы: 1
RSS
POWER PIVOT. Обновление данных по расписанию
 
Добрый день!

Имею файл Excel с моделью данных Power Pivot. Задача - автоматическое обновление данных.
Как можно такое решить? Может какой-то VBA макрос есть готовый?) Может как то иначе решается?
 
Доброе время суток.
В простейшем виде создаёте текстовый файл с расширением vbs с таким кодом (не забудьте прописать путь и имя своего файла для обновления модели Power Pivot).
Код
Option Explicit
RefreshPowerPivotModel
Public Sub RefreshPowerPivotModel()
    Const bookPath = "C:\Temp\powerPivotBook.xlsx"
    Dim xlApp, pBook
    Set xlApp = CreateObject("Excel.Application")
    xlApp.ScreenUpdating = False
    xlApp.Visible = True 'Можно удалить, если есть гарантия, что не будет проблем
    Set pBook = xlApp.Workbooks.Open(bookPath)
    pBook.Model.Refresh
    pBook.Close True
    xlApp.ScreenUpdating = True
    xlApp.Quit
End Sub
И в планировщике настраиваете его запуск.
 
Андрей VG, спасибо большое!
 
Андрей VG, при создании запроса к БД я ставил галочку "сохранить пароль" при вводе логина\пароля к БД.
Но при запуске .vbs всё равно происходит запрос пароля к БД.
Как быть в такой ситуации?
 
Аристарх Петров, я тестировал выполнение vbs-скрипта для подключения к базе данных MS SQL Server с пользователем базы данных и выполнял загрузку через Power Query (другими способами для внешних данных по отношению к книге не пользуюсь). Описываемых вами проблем не было.
Страницы: 1
Наверх