Кнопка обновления кода запроса VBA в форме: запрос обновляется некорректно

#vba #excel

#vba #excel

Вопрос:

У меня есть форма в Excel, на которой есть кнопка. Предполагается, что при нажатии кнопки обновляется SQL-запрос, время и дата вычисляются и сохраняются на скрытом листе, а метка кнопки обновляется с указанием времени и даты со скрытого листа (чтобы на кнопке всегда отображались дата и время последнего обновления).

Это код, который я написал….

 Private Sub CheckTBsQueryRefreshBtn_Click()
Dim LastRf
CheckTBsQueryRefreshLbl.Caption = ("Getting Data")
ActiveWorkbook.Connections("CheckTbs").Refresh
LastRf = ("Last Refreshed: ") amp; Now
Sheet47.Range("CheckTBsLbl").Value = LastRf
CheckTBsQueryRefreshLbl.Caption = LastRf
End Sub
  

Я обнаружил, что при нажатии кнопки я получаю «Подключение к источнику данных», а затем «Запуск фонового запроса ….» с вращающимся глобусом — но запрос фактически не обновляется ….. глобус продолжает вращаться, и запрос будет завершен только в том случае, еслиЯ закрываю форму.

Я что-то упускаю из своего кода?

Комментарии:

1. Вы пробовали добавлять ActiveWorkbook.Connections("CheckTbs").OLEDBConnection.BackgroundQuery = false ?

2. Это работает! — Для всех моих отдельных запросов было установлено, что они не используют фоновый запрос, я думаю, ActiveWorkbook. Соединения («»). Метод обновления пытается использовать фоновый запрос по умолчанию, что вызывает конфликт.

3. Рад, что разобрался. Я не знаю, почему по умолчанию разрешены фоновые запросы!