循环下拉但需要包含“等待”功能

时间:2018-01-18 16:43:18

标签: excel vba excel-vba bloomberg

我正在尝试构建的宏基本上告诉excel:

  1. 从下拉列表中选择一个项目,该项目会更改另一个单元格的值
  2. 然后将该值复制并粘贴到另一张表
  3. 下移到下拉列表中的下一个项目
  4. 重复
  5. 我使用了下面的代码。但是,当我在下拉列表中选择新项目时,我也使用 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
    

1 个答案:

答案 0 :(得分:1)

添加 Application.Wait (Now + TimeValue("0:00:20"))您需要暂停的地方。