OLEDBConnection.Refre sh Остановка при запуске планировщика задач - PullRequest
0 голосов
/ 28 января 2020

У меня есть скрипт VB на сервере приложений для открытия .xlsm и запускаю функцию, которая выполняет следующие действия:

  1. Открытие файла Excel с подключением OLEDB
  2. Refre sh Соединение
  3. Сохранение и закрытие

При запуске вручную все работает как задумано. Однако при запуске в планировщике заданий от имени c пользователя, вошел ли он в систему или нет (с паролем и самой высокой привилегией, также обе папки находятся на сервере ).

Из моего простого метод ведения журнала, я могу сказать, что это происходит на шаге «Refre sh»

DisplayAlerts = False

wb.Worksheets("DateRanges").Range("B10").Value = "For Loop"
wb.Save
For Each objConnection In wb.Connections
'Get current background-refresh value
    wb.Worksheets("DateRanges").Range("B10").Value = "Set Background"
    wb.Save
    bBackground = objConnection.OLEDBConnection.BackgroundQuery

    wb.Worksheets("DateRanges").Range("B10").Value = "Turn Background Off"
    wb.Save
'Temporarily disable background-refresh
    objConnection.OLEDBConnection.BackgroundQuery = False

    wb.Worksheets("DateRanges").Range("B10").Value = "Refresh"
    wb.Save
'Refresh this connection
    objConnection.OLEDBConnection.Refresh

    wb.Worksheets("DateRanges").Range("B10").Value = "Turn Background On"
    wb.Save
'Set background-refresh value back to original value
    objConnection.OLEDBConnection.BackgroundQuery = bBackground
Next

В настройках источника данных, я использую учетные данные базы данных, и я передаю через UID / PWD через Строка подключения.

Буду очень признателен за любую помощь / совет, который вы все сможете дать.

PowerQuery

OLEDB Settings

Query Settings

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