String 将公式插入单元格VBA Excel时出现运行时错误1004

String 将公式插入单元格VBA Excel时出现运行时错误1004,string,vba,excel,excel-formula,String,Vba,Excel,Excel Formula,尝试将公式插入VBA中的单元格时,出现运行时错误1004 在我的excel表格中,a列有一个日期,第1行有一个股票代码,从B列开始,每隔3列,所以B、E、H等 在单元格C2中,我试图将B2中的值除以列标题“FTSE”下第2行的值。将此公式直接放入单元格中即可: =IFERROR(B2/(VLOOKUP($A2,$A$2:$GMQ$261,MATCH("FTSE",$B$1:$GMQ$1,0)+1,FALSE)),"") 我正在尝试使用vba来实现这一点。这是我的代码: Sub InsertFo

尝试将公式插入VBA中的单元格时,出现运行时错误1004

在我的excel表格中,a列有一个日期,第1行有一个股票代码,从B列开始,每隔3列,所以B、E、H等

在单元格C2中,我试图将B2中的值除以列标题“FTSE”下第2行的值。将此公式直接放入单元格中即可:

=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

您可以减少双引号ª与用作
文本(,)
的所产生的混淆。这将返回一个长度为零的字符串,就像
“”
一样,并且没有像
“”
那样的双引号



有关更多示例,请参见

记住在最后一对双引号上“加倍”!加里是对的。。。公式必须是
“=IFERROR(B2/(VLOOKUP($A2,$A$2:$GMQ$261,MATCH(“'FTSE”“$B$1:$GMQ$1,0)+1,FALSE)),”,“,”,
(你错过了“错误部分翻倍”)@Ralph我把它作为评论发布,因为我在使用手机,无法完全测试另一行代码。噢,哇,谢谢你的提示,我得用这个。
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(,))"