【发布时间】:2015-06-02 02:06:24
【问题描述】:
如何在更换工作表后保持公式正常工作? 我是说 How to preserve a formula's reference to a worksheet when the worksheet is deleted and replaced? 但在 C# 中
using Excel = Microsoft.Office.Interop.Excel;
Excel.Application excelApp = new Excel.ApplicationClass();
Excel.Workbook excelWorkbook = excelApp.Workbooks.Open(connection.DataSource, 0, false, 5, "", "", false, Excel.XlPlatform.xlWindows, "", true, false, 0, true, false, false);
foreach (Excel.Worksheet sh in excelWorkbook.Sheets)
{
if (sh.Name == SheetName || sh.Name == "_"+SheetName)
{
sh.Application.DisplayAlerts = false;
sh.Delete();
}
}
excelWorkbook.Save();
excelWorkbook.Close(true, excelWorkbook.FullName, null);
excelApp.Quit();
稍后我将调用同名的 SQL 命令“创建表”。所有公式都不起作用
【问题讨论】:
-
您是否在删除发生后验证了相关公式的实际内容?您是否尝试过手动执行这些步骤来验证它们?
-
我不确定你的意思。 fromulas的实际内容:=#ADR!B3+#ADR!C3 应该是=Sheet1!B3+Sheet1!C3
标签: c# excel excel-interop