Выпадающий цикл, но необходимо включить функцию ожидания

Макрос, который я пытаюсь создать, по существу сообщает excel:

  1. Выберите элемент из раскрывающегося списка, который изменяет значение другой ячейки.
  2. Затем скопируйте и вставьте это значение на другой лист.
  3. Перейти к следующему элементу в раскрывающемся списке
  4. Повторение

Я использовал приведенный ниже код, который работал. Однако я также использую Bloomberg для извлечения данных, когда выбираю новый элемент в раскрывающемся списке. Получение данных занимает несколько секунд. Прямо сейчас код не «ждет», пока Bloomberg извлечет данные, прежде чем вставить значение. Поэтому у меня вопрос: как мне включить код, который сообщает Excel, что нужно ждать 20 секунд или около того каждый раз, когда в раскрывающемся списке выбирается новый элемент, прежде чем переходить к следующему шагу.

Sub DebtAutopull()
Dim dvCell As Range
Dim inputRange As Range
Dim c As Range
Dim i As Long

Set dvCell = Worksheets("PULLER").Range("B2")
Set inputRange = Evaluate(dvCell.Validation.Formula1)

i = 1
Application.ScreenUpdating = False
For Each c In inputRange
    dvCell = c.Value

    Worksheets("PASTE").Cells(i, "E").Value = Worksheets("PULLER").Range("D2").Value
    i = i + 1

Next c
Application.ScreenUpdating = True

End Sub

person d_h    schedule 18.01.2018    source источник
comment
msdn.microsoft.com/en- us / vba / excel-vba / статьи /   -  person braX    schedule 18.01.2018
comment
Поиск в Google Excel VBA wait возвращает ответ как в Microsoft, так и в дубликате в stackoverflow. stackoverflow.com/questions/1544526/   -  person Karl Kristjansson    schedule 18.01.2018
comment
Возможный дубликат VBA для обновления данных Bloomberg, не работающих должным образом заказ   -  person assylias    schedule 19.01.2018


Ответы (1)


Добавьте Application.Wait (Now + TimeValue("0:00:20")) там, где вам нужна пауза.

person dadler    schedule 18.01.2018