Vb.net更新与其他工作簿的引用的Excel公式
我正在尝试从一个工作簿更新一些公式到另一个工作簿。 一切都运作良好,直到我碰到一个公式,有一个参考另一个工作簿。 例如,像这样的公式=IF(ISERROR(W!Var1),0,W!Var2)
它会提示我打开这个工作簿,我假设它可以评估公式。 所以我的问题是这个。 有没有办法让我在飞行中处理这些情况,所以如果有工作簿参考需要它会提示我,然后将其保存到内存? 因为如果我有多个包含这些公式的单元格,它会提示我为包含链接的每个单元格打开引用的工作簿。 或者,有没有一种方法可以将我的公式推入细胞,而无需进行评估?
所以在我的代码中,我有这一行适用于任何不包含工作簿引用的值。 TheRange.RefersToRange.FormulaR1C1 = RangeFormula
任何帮助是极大的赞赏。
我知道你参考了Worksheets
(每个给定的Excel文件中的“选项卡”), Workbook
是整个文件。 当找不到所提到的工作表时,popup消息出现。 例如: range.Value = "=sheet5!A3"
(在只有“sheet1”,“sheet2”和“sheet3”的工作簿中)。 如果你想避免这个信息(尽pipe记住工作表不在那里,那么计算结果也是错误的),你可以这样写:
excelApp.DisplayAlerts = False
其中excelApp
是您正在使用的Excel.Application
。