Excel 2013页眉和页脚在自动化时丢弃&符号和括号

时间:2016-04-07 16:39:25

标签: c# excel header automation footer

我有一个在Excel 2013中生成报告的程序。代码片段如下所示:

Worksheet sheet = Excel.Workbooks.Add();
string[] footer = new string[] { @"&[Tab]", ProgramName, @"&[Date]" };

sheet.PageSetup.LeftFooter = footer[0];
sheet.PageSetup.CenterFooter = footer[1];
sheet.PageSetup.RightFooter = footer[2];

当我关闭并重新打开工作簿时,它看起来像:

  

标签] ------------------------- PROGRAM ---------------- ---------日期]

Grrr,插入图片不起作用,我不能有多个相邻的空白区域(想象一下没有连字符)

重要提示:如果我立即尝试打印工作表,则文档如上所示。当我只需单击页脚区域来编辑页脚时,它会立即意识到值为&[Date]。当编辑器离开焦点时,页脚会正确显示4/7/2016

所以我的问题是为什么会发生这种情况?为什么/ Excel如何混淆?有没有人见过这种行为或任何类似的东西?

就在我发布之前,我认为可能是因为我的Excel应用程序是隐形的,但没有。

感谢。

1 个答案:

答案 0 :(得分:1)

不确定您的语言,但在VBA中,代码将是“& D”。使用“& [Date]”会导致与您编写的内容类似的问题 -