将公式插入单元格VBA Excel时运行时错误1004
试图将公式插入到VBA中的单元格时出现运行时错误1004。
在我的Excel表格中,我在A列中有一个date,在B列中每3列有一列股票行情,所以B,E,H等
在单元格C2中,我试图将B2中的值除以第2行中“FTSE”列标题下的值。 把这个公式直接运用到单元格中:
=IFERROR(B2/(VLOOKUP($A2,$A$2:$GMQ$261,MATCH("FTSE",$B$1:$GMQ$1,0)+1,FALSE)),"")
我正在尝试使用vba来做到这一点。 这是我有的代码:
Sub InsertFormula() Range("C2").Select ActiveCell.Formula = _ "=IFERROR(B2/(VLOOKUP($A2,$A$2:$GMQ$261,MATCH(""FTSE"",$B$1:$GMQ$1,0)+1,FALSE)),"")" End Sub
您可以用TEXT(,)
作为TEXT(,)
函数减less由双引号¹产生的混淆。 这返回一个零长度的string就像""
一样,并且没有引号像""""
一样加倍。
Range("C2").Formula = _ "=IFERROR(B2/(VLOOKUP($A2, $A$2:$GMQ$261, MATCH(""FTSE"", $B$1:$GMQ$1 ,0)+1, FALSE)), TEXT(,))" 'without the offset and subsequent adjustment with full column references Range("C2").Formula = _ "=IFERROR(B2/VLOOKUP($A2, $A:$GMQ, MATCH(""FTSE"", $1:$1 ,0), FALSE), TEXT(,))"
¹ 请参阅如何在Excel公式中创build包含双引号的string? 更多的例子。