Excel VBA循环的效率问题

时间:2016-07-04 10:12:22

标签: excel-vba vba excel

我需要查看包含几千行的数据,并根据几个字段的值编辑特定的行(如果它们符合某些条件)。

问题是它需要很长时间(每个循环约13秒,有时我有100个循环)...我也尝试使VBA过滤表然后处理过滤的行,但它花了相同的时间。

While l < CurrAloc And k <= lastrow
  If Cells(k, g) = "Pass" And Cells(k, h) <> "" And Cells(k, i) = "" And Cells(k, j) = "Available" Then

    Cells(k, ULDecCol) = CurrCustomer
    Cells(k, ULFromClassifierCol) = CurrClassifier
    add_to_log k
    Sheets("Unit List").Select
    l = l + 1
  End If

  k = k + 1
Wend

1 个答案:

答案 0 :(得分:1)

尝试

Application.Calculation = xlCalculationManual

在while循环之前跟着

Application.Calculation = xlCalculationAutomatic

在while循环结束后。