使用C#将命名区域添加到Excel中

本文关键字:添加 Excel 区域 使用 | 更新日期: 2023-09-27 17:59:13

我正在创建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>

这个问题有任何线索吗

使用C#将命名区域添加到Excel中

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