【发布时间】:2015-02-21 00:55:31
【问题描述】:
我在使用 VBA 在列中插入 vlookup 公式时遇到问题。我收到“运行时错误'1004':应用程序定义或对象定义错误”。我怀疑这可能是“双引号”的问题。我已经对此进行了一些研究,但是当需要双引号以及不需要双引号时,我仍然无法理解。另外,我使用的是动态日期变量 (TodaysDate),它是由 =Format(Date, "mm-dd-yyyy") 确定的字符串。以下是不起作用的代码行:
Range("Y2:Y" & RowCount).Formula = "=IF(ISNA(VLOOKUP(X2,""'[PHO """ & TodaysDate & """.xlsx]Detail'!$C:$D""),1,FALSE)),""Yes"",""No"")"
【问题讨论】:
-
在调试窗口中打印您试图放入公式中的字符串。是你想要的吗?工作簿的名称对吗?
-
我该如何使用调试窗口?对不起,我是一个相对的菜鸟。
-
确保即时窗口已打开 (Ctrl-G),然后在引发错误的行之前添加
Debug.Print "=IF(..."。它将在即时窗口中打印出来 -
我想你在
!$C:$D""),1,FALSE之后多了一个)。也许我错了:) -
杜比森,你是对的。你对额外的括号是正确的。告诉你姐姐,你是对的.....
"=IF(ISNA(VLOOKUP(X2,'[PHO " & TodaysDate & ".xlsx]Detail'!$C:$D,1,FALSE)),""No"",""Yes"")"