微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ClosedXML 数据透视表仅在启用编辑后呈现

如何解决ClosedXML 数据透视表仅在启用编辑后呈现

我正在使用 ClosedXML 创建带有数据透视表的电子表格。我构建了一个 C# WinForm 应用程序,它在我的 C:\ 驱动器上创建文件

创建文件后打开文件时,我在 Excel 顶部收到一条警告:

受保护的视图:小心 - 来自 Internet 的文件可能包含...

后面跟着一个按钮,上面写着“启用编辑”。

如果我不启用编辑,则数据透视表不会出现在工作表上;只有一个蓝色单元格应该出现在数据透视表的开头。

如果我关闭 Excel 并重新打开同一个文件并单击“启用编辑”按钮,Excel 会闪烁,然后数据透视表会按预期呈现。

我可以用 OpenXML 或 ClosedXML 做些什么来避免这个添加的步骤?

我们之前生成电子表格的方法使用 Excel ActiveX 对象来构建电子表格,而那些没有这个问题。

解决方法

ClosedXML 尚未实现数据透视表呈现。

,

用于验证文档是否来自不受信任来源的 Excel / Office 机制正在检查 Excel 试图打开的文件的文件路径。如果文件被视为不受信任,它会阻止大多数潜在的有害功能,包括呈现数据透视表。

当文件位于系统认为不安全的路径时,Excel 会向您发出受保护的视图警告。常见路径包括 C:\Temp、C:\Windows\Temp、%USERPROFILE%\AppData\Local\Temp 和浏览器的下载文件夹。

为防止发生这种情况,请将您的文件保存在属于用户的常规文件夹中,例如 Documents 或 Desktop。

您可以使用此对 GetFolderPath 的调用轻松地将文件夹获取到这样一个受信任的位置:

Environment.GetFolderPath(Environment.SpecialFolder.Personal) 

一旦保存在那里,保护警告就会消失。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。