用VBA循环浏览vlookup

时间:2017-09-21 00:08:02

标签: vba vlookup

我不是VBA的专家,所以我现在偶然发现了一个问题!

我有一张带按钮的表(比如更新sintetic *) * sintetic是要更新的工作簿的名称

我需要通过vlookup公式更新sintetic,这个工作正常,这是代码:

  Sub update sintetic()
    '

'

'disable everything so macro goes faster
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Application.EnableEvents = False
ActiveSheet.DisplayPageBreaks = False

'opens the workbook to be written
    Windows("sintetic.xlsx").Activate

'formula goes here
    Range("c2").FormulaR1C1 = _
        "=VLOOKUP(RC[-2]&RC[-1],'[Gross.xlsb]dados'!C39:C40,2,0)"
    Range("c3").FormulaR1C1 = _
        "=VLOOKUP(RC[-2]&RC[-1],'[Gross.xlsb]dados'!C39:C40,2,0)"

'breaks the link
    ActiveWorkbook.BreakLink Name:= _
        "gross.xlsb", Type:=xlExcelLinks

'enables everything again
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
ActiveSheet.DisplayPageBreaks = True

End Sub

问题是:我需要更新900个单元格,在上面的代码中,我只更新了2个单元格(c2和c3)我不想复制并粘贴900行,所以,有没有办法循环通过上面代码的范围?比如说c1:c1000,也就是说,找不到的100个单元格应该是空白的。

这是一个非常具体的要求,所以我发现什么都没有帮助我,如果有人能发光,我将不胜感激!

1 个答案:

答案 0 :(得分:2)

您不需要循环或更多行。 Size in bytes: 153 Sent bytes:861 Headers size in bytes: 153 Body size in bytes: 0 Sample Count: 1 允许整体应用公式。

FormulaR1C1