首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在IWorksheetin Spreadsheetgear上使用ProtectContents

在IWorksheetin Spreadsheetgear上使用ProtectContents
EN

Stack Overflow用户
提问于 2016-05-24 11:28:06
回答 1查看 186关注 0票数 0

我有一个工作簿对象,其中我在某些单元格中使用excel公式。我以编程方式设置IWorksheet对象上的ProtectContents的值,以打开和关闭这些单元格的只读模式。

1.当ProtectContents的值设置为true时,我看到所有单元格都像预期的那样处于只读模式,但是单元格(使用excel公式)的值显示为#NAME?.Is这是它在Spreadsheetgear中的工作方式吗?

2.当ProtectContents设置回false时,我看到所有使用公式的单元格仍然将值显示为#NAME?但是它们可以作为expected.But编辑,不知道为什么这些单元格值没有被计算??

请给我建议。

谢谢你的帮助。

EN

回答 1

Stack Overflow用户

发布于 2016-05-26 00:12:36

#NAME之间不应该有任何关联?错误和工作表保护的状态。#姓名?出现错误的原因有很多,但如果没有关于特定案例的更多详细信息,就不可能说出为什么会出现这种情况。

您可能会在SpreadsheetGear中看到这一点的一个常见原因(我猜不是在Excel本身?)是因为这些有问题的单元格中的公式直接或间接依赖于工作簿的VBA部分中的用户定义函数(UDF)、来自外部XLL外接程序等。SpreadsheetGear不支持通过VBA或XLL执行UDF,因此这些函数的计算结果为#NAME?

通过SpreadsheetGear.CustomFunctions.Function类及其Evaluate(...),SpreadsheetGear确实支持在.NET应用程序中实现您自己的自定义函数方法。如果您发现上述原因,您可以实现自己的Function来正确计算这些单元格。我会提供示例代码,但我一开始就是在冒险,提到这是潜在的原因。用更多细节更新你的问题,如果需要,我可以相应地更新我的问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37403890

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档