将整数变量传递给vba数组公式

时间:2017-09-15 10:41:10

标签: vba excel-vba excel

我试图将整数值传递给数组公式,下面是代码: -

queue

我在电子表格中低于输出:

cnt = 150
cnt2 = 10
Range("H" & cnt2).Select

Selection.FormulaArray = "=INDEX(Input_Sheet!R1C8:R[" & cnt & "]C8,MATCH(1,(backbone_new!RC[-4]=Input_Sheet!R1C2:R[" & cnt & "]C2)*(backbone_new!RC[-3]=Input_Sheet!R1C4:R[" & cnt & "]C4),0))"

整数cnt值为150,但我在公式中得到160。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

当您使用[“& cnt&”]时,您会偏移150行。当您在第10行中选择一个单元格时,您最终会进入第160行。

[]表示偏移量。如果你想要实际的行,就这样做:

cnt = 150
cnt2 = 10
Range("H" & cnt2).Select

Selection.FormulaArray = "=INDEX(Input_Sheet!R1C8:R" & cnt & "C8,MATCH(1,(backbone_new!RC[-4]=Input_Sheet!R1C2:R" & cnt & "C2)*(backbone_new!RC[-3]=Input_Sheet!R1C4:R" & cnt & "C4),0))"

即。只需删除[]。