预期结束声明

时间:2014-02-14 01:07:51

标签: excel-vba vba excel

好的,我使用了一个建议运行良好的公式,应该没有问题,但现在我收到此错误:

  

预期结束声明

这是公式

 Range("B4").FormulaR1C1 = "=IF(RC[-1]="T",VLOOKUP(RC[7],treatlookup,11,FALSE),VLOOKUP(RC[7],itemlookup,22,FALSE))"

不确定发生了什么,为什么会发生这种情况。任何建议。

谢谢,

1 个答案:

答案 0 :(得分:1)

通过加倍("T")来转义嵌入式双引号(""T""):

Range("B4").FormulaR1C1 = "=IF(RC[-1]=""T"",VLOOKUP(RC[7],treatlookup,11,FALSE),VLOOKUP(RC[7],itemlookup,22,FALSE))"
                                      ^^^
                                       |
                                      Here

Excel正在尝试将"=IF的开头报价与它找到的下一个双引号("T")配对,而该部分("=IF(RC[-1]=")无效声明。加倍它们告诉Excel单独考虑它们,允许它们正确地嵌入到公式中。

(如果你看到它指示的代码,那么当你收到消息时,会突出显示错误;这就是我发现它的方式。)