数据在另一列中存在时在列中循环公式

时间:2018-09-05 15:40:27

标签: excel-vba

我被困住了,我敢肯定这很简单。当A列中存在数据时,我需要在E列中运行LOOKUP公式。A列将具有不同数量的数据/行,它将永远不是一个设置的数字。问题是我的代码想循环遍历E列的所有内容,并且宏需要20分钟才能运行。

这里是我所拥有的:

Sub Run_Lookup()
      Range("A1").Select
      Do Until IsEmpty(ActiveCell)
         Range("E:E").Formula = "=lookup(A1, G:H)"
         ActiveCell.Offset(1, 0).Select
      Loop
   End Sub

我感谢任何建议。

编辑:我所遇到的问题...

EDIT: A visual of my issue...

1 个答案:

答案 0 :(得分:2)

有几种方法可以解决此问题-我倾向于不喜欢DoUntil:

1)您可以简单地将数据转换为表格吗?它将根据需要自动扩展列E,而无需在VBA中。

2)编写循环以首先查找数据的结尾(提示:Google for LastRow Excel VBA),然后循环

For I = 1 to LastRow
    'Code here
Next I