【发布时间】:2014-02-18 18:54:52
【问题描述】:
我使用以下代码将一个 Excel 工作表复制到另一个工作簿。源 Excel 工作表包含隐藏行中的系列图表。 (这些系列在后面的代码之前被c#中的代码隐藏)
Worksheet w; //My source worksheet with chart
w.Activate();
w.Name = CreateValidWorksheetName(targetSheetName);
w.get_Range("a1").EntireRow.EntireColumn.Copy();
w.get_Range("a1").EntireRow.EntireColumn.PasteSpecial(XlPasteType.xlPasteValues);
w.Range["A1:A1"].Select();
if (targetWorkbook != null)
{
w.Copy(targetWorkbook.Sheets[1], Type.Missing);
targetWorkbook.RefreshAll();
}
....
targetWorkbook.SaveAs(...
现在可见系列被正确复制,但隐藏系列被复制为外部链接,例如: ='C:\X[sourceWorkbook.xlsx]PDK 0-32 kv'!$D$23:$D$100
现在是有问题的部分。当我打开“targetWorkbook”时,我看到了包含隐藏系列的丑陋图表。但是,只要我在 Excel 中手动打开“sourceWorkbook”,图表就会自动修复,隐藏的系列就会消失。
如何以编程方式实现这一目标?
【问题讨论】:
标签: c# excel charts excel-interop