在我的程序中,我使用包含对表(listobject)的引用的公式创建一个excel文件。打开生成的excel文件时,公式会显示#NAME?
错误,直到用户选择公式并再次退出。
首先我做:
worksheet.Cells["A2"].Formula = "=INDEX(personData, MATCH(B2, personData[displayName]), 0)";
workbook.CalculateFormula();
当我在excel中打开生成的工作簿时,A2的公式在大小写中略有变化:
=INDEX(PERSONDATA,MATCH(B2,personData[displayName]),0)
当聚焦公式并再次退出时,公式变为
=INDEX(personData,MATCH(B2,personData[displayName]),0)
资本化的来源是什么? 我错过了什么?
更新
我已经能够将问题缩小到这样一个事实,即当引用的表位于另一个选项卡而不是公式时,公式会中断。当我将它移动到同一个标签时,一切都按预期工作
将aspose.cells库更新到最新版本的aspose.cells(8.6.0.0)没有帮助。
添加对引用的(lookup!personData)名称的选项卡引用无效。
根据要求在Aspose论坛上发布简短帖子和示例代码: http://www.aspose.com/community/forums/permalink/658097/658097/showthread.aspx#658097
答案 0 :(得分:1)
在我看来,Aspose.Cells的一个错误。请尝试最新版本:Aspose.Cells for .NET 8.5.2(从Aspose网站下载),它应该解决这个问题。还请在Aspose.Cells论坛中使用您的示例excel文件发布此问题,以便我们可以运行您的代码并找出问题的根本原因。
大多数情况下,这样的错误意味着Aspose.Cells无法计算公式。您能否以PDF格式保存您的工作簿,看看它是否显示正确的值或错误。
注意:我在Aspose
担任开发人员传播者