来自另一个WorkBook的FormulaR1C1

时间:2015-07-07 15:28:01

标签: excel-vba vba excel

我一直在看这段代码,似乎无法找到我做错的事情。它必须是那些明显的解决方案之一,但我很难过。

导致我麻烦的代码行是:

Range("M2:M5759).FormulaR1C1 = "=if(isna(vlookup(RC[-12], " & Path & "[Budget " & Month & ".xlsx]Budget_" & Month & "'!RC[-12]:R[LastR]C[-12], 1, false)), ""NO"", ""YES"")"

变量Path包含我正在查看的文件的位置。

该文件的名称为Budget 0615.xlsx,Tab名为Budget_0615,但日期必须可更改,因此将其分配给变量Month。

变量LastR包含文件中的行数。

我的代码试图返回值" NO"如果无法在文件Budget 0615.xlsx中找到A列中的值,则返回" YES"如果可以的话。

当我运行宏时,我得到运行时错误' 1004':应用程序定义或对象定义的错误。

有人可以帮忙吗?如果您需要更多信息或者我不清楚,请询问。

谢谢!

1 个答案:

答案 0 :(得分:0)

你似乎错过了一个'在公式中的Path之前,LastR需要连接到公式字符串中作为绝对数字,而不是相对数字:

Range("M2:M5759).FormulaR1C1 = "=if(isna(vlookup(RC[-12],'" & Path & "[Budget " & Month & ".xlsx]Budget_" & Month & "'!RC[-12]:R" & LastR & "C[-12], 1, false)), ""NO"", ""YES"")"