我正在尝试将一些公式从一个工作簿更新到另一个工作簿。一切都很好,直到我遇到一个引用另一个工作簿的公式。例如像这样的公式=IF(ISERROR(W!Var1),0,W!Var2)
它会提示我打开这个工作簿,我假设它可以评估公式。所以我的问题是这个。有没有办法让我在运行中处理这些情况,所以如果需要工作簿参考,它会提示我然后将其保存到内存中?因为如果我有多个包含这些公式的单元格,它将提示我为包含该链接的每个单元格打开引用的工作簿。或者,有没有一种方法可以将我的公式推入细胞而不用excel评估它?
因此,在我的代码中,我有这一行适用于任何不包含工作簿引用的值。 TheRange.RefersToRange.FormulaR1C1 = RangeFormula
非常感谢任何帮助。
答案 0 :(得分:2)
我知道您引用Worksheets
(给定Excel文件中的每个“标签”),Workbook
是整个文件。无法找到引用的工作表时出现弹出消息。示例:range.Value = "=sheet5!A3"
(在只有“sheet1”,“sheet2”和“sheet3”的工作簿中)。如果你想避免这个消息(虽然记住工作表不在那里,因此无论如何计算都是错误的),你可以写:
excelApp.DisplayAlerts = False
excelApp
是您当前使用的Excel.Application
。