Excel VBA Таймер убить Sub после заданного времени - PullRequest
0 голосов
/ 17 декабря 2018

Я хочу использовать таймер в Excel VBA для прерывания веб-запроса.Вот сценарий.У меня есть рабочая книга, где пользователи могут прокручивать список заданий, и, когда они это делают, в фоновом режиме выполняется веб-запрос, который проверяет некоторую информацию, связанную с этим заданием.Обычно это занимает меньше секунды, чтобы получить и представить данные.Полученные данные не так важны, поэтому, когда они работают, это здорово, а если нет, то ничего страшного.Что имеет большое значение, так это то, что иногда веб-страница имеет свои собственные проблемы, и подписчик должен ждать, пока веб-страница не вышибет их, прежде чем продолжить.Моя проблема в том, что любой таймер до или после вызова моего кода запроса (ниже) ничего не делает.Есть ли способ закодировать это так, что если мой код запроса занимает больше 1 секунды, убить код и просто двигаться дальше.

Пример: если приведенный ниже код не завершается в течение 1 секунды, выйдите из этого подпрограммы.

Sub DoQuery()
With Selection.QueryTable
    .Connection = URLString
    .WebSelectionType = xlAllTables
    .WebFormatting = xlWebFormattingNone
    .WebPreFormattedTextToColumns = True
    .WebConsecutiveDelimitersAsOne = True
    .WebSingleBlockTextImport = False
    .WebDisableDateRecognition = False
    .Refresh BackgroundQuery:=False
End With
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...