使用C#将命名范围添加到Excel

时间:2014-04-22 05:25:08

标签: c# excel

我正在创建使用代码创建命名范围的Excel工作表。

 ExcelRange namedRange = sheet1.Cells[2, startColumn + i, regionEndRow, startColumn + i];
 package.Workbook.Names.Add("NamedRange", namedRange);
 namedRange.Dispose();

保存excel文件后,我试图打开该文件。那时它给我一个错误如下

<?xml version="1.0" encoding="UTF-8" standalone="true"?>
-<recoveryLog xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><logFileName>error097360_01.xml</logFileName><summary>Errors were detected in file 'D:\ExcelInputSheet\Sheet.xlsm'</summary>-<removedRecords summary="Following is a list of removed records:"><removedRecord>Removed Records: Named range from /xl/workbook.xml part (Workbook)</removedRecord></removedRecords></recoveryLog>

这个问题是否有任何线索

1 个答案:

答案 0 :(得分:0)

我能找到原因。我在循环中使用此代码,并且动态添加命名范围。在某些时候,有些名称带有空格'&amp;'范围名称的字符。这就是问题所在。当工作表打开时,它将丢弃所有无效的命名范围