小编Dun*_*can的帖子

设置打印时在顶部重复的行 - Open XML 和 Excel

我试图让 xlsx 文件的前 4 行在打印时在每页顶部重复。我正在使用 Open XML SDK 来完成此任务。

我的文件由 SSRS 执行 Web 服务作为文件流生成。然后,在将文件交付给用户之前,我需要修改多个布局和页面设置(页边距、页面大小、缩放等),因为我的用户对 Excel 的了解很少。我需要调整的所有其他设置都可以正常工作,因此我已从此示例中删除了所有代码。

当尝试使用下面的代码设置重复页眉时,它执行时没有错误。但是,当我在执行代码后尝试打开文件时,我收到一条文件损坏消息,并且无法打开。

知道我在这里做错了什么吗?这让我疯狂!

using (SpreadsheetDocument xl = SpreadsheetDocument.Open("C:\\" + filename, true))
{
WorkbookPart wbp = xl.WorkbookPart;

//-----------------------------------------
// repeat rows at top when printing
//-----------------------------------------
DefinedNames dn = new DefinedNames();
wbp.Workbook.Append(dn);
wbp.Workbook.Save();

DefinedNames definedNames = wbp.Workbook.Descendants<DefinedNames>().FirstOrDefault();
DefinedName n1 = new DefinedName() { Name = "_xlnm.Print_Titles", LocalSheetId = (UInt32Value)0U };
n1.Text = "alpha_sort_nc!$1:$4";
definedNames.Append(n1);
wbp.Workbook.Save();

xl.Close();
}
Run Code Online (Sandbox Code Playgroud)

c# excel openxml xlsx excel-2010

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

c# ×1

excel ×1

excel-2010 ×1

openxml ×1

xlsx ×1