VBA适用于大范围的配方

时间:2013-09-28 12:42:18

标签: excel vba excel-vba

我有一个很大的范围(高达6万行),我也想申请一个公式。

循环需要太长时间。该公式适用于行上的信息,因此不完全相同,但行将是唯一的变量。

最好的方法是什么?我以为我会使用VBA而不是Excel来确保电子表格不会太麻烦。

1 个答案:

答案 0 :(得分:0)

下面是一个简单的方法来做你想要的。如果公式需要很长时间才能更新,最好使用VBA计算结果并将结果输出到范围。

假设您希望行D2中的公式=INDEX($M:$M,MATCH(A2,$N:$N,0),0):D60000

我。打开宏录制器

II。启用使用相对引用

enter image description here

III。输入单个单元格中所需的公式(确保向下拖动它对所有行都是正确的)

IV。关闭宏录制器

诉在VB编辑器中找到记录的公式 - 例如

ActiveCell.FormulaR1C1 = "=INDEX(C13,MATCH(RC[-5],C14,0),0)"

VI。使用

将公式应用于所需范围
Sheet1.range("D2:D60000").FormulaR1C1 = "=INDEX(C13,MATCH(RC[-5],C14,0),0)"