C# - 评估Excel逻辑公式

时间:2010-01-12 13:54:12

标签: c# .net excel

我有一个应用程序,需要评估Excel逻辑公式,我使用Excel DLL来执行此操作,但DLL不是非常有效。

.NET Framework(C#)有任何可以创建此作业的类吗?

样本

我提供此

=IF(AND(10>=-5;10<0);(-3,8*10+335);IF(AND(10>=0;10<5);(1,4*10+335);IF(AND(10>=5;10<14,4);(-1,2766*10+348,38);IF(AND(10>=14,4;10<25);(-1,5094*10+351,74);IF(AND(10>=25;10<=45);(-1,4*10+349);0)))))

得到这个

335,614

由于

6 个答案:

答案 0 :(得分:9)

是的,同意,Excel.Application.Evaluate方法可能很慢。它通常适合我的需要,但它没有快速闪电。

我认为在没有Excel对象模式的情况下评估Excel公式的最佳来源是:

其他一些相关文章:

希望这会有所帮助......

答案 1 :(得分:4)

答案 2 :(得分:2)

我正在使用ActiveXls并且它做得很好。它不是免费组件,因此您必须付费。我不知道那里是否有任何好的和免费的组件,但我更愿意得到支持以防我需要它:)

答案 3 :(得分:1)

我们使用SpreadsheetGear来做这件事 - 但它不仅仅是评估公式,还可能对你来说太过分了。

它似乎很快,并提供了一个非常容易使用的.NET API。

答案 4 :(得分:1)

我用过bcParser.NET是.NET平台的数学表达式解析器库。这个实用程序来自bestcode组织,易于使用来计算所有类型的公式。 请参阅此http://www.bestcode.com/html/math_parser_for_dot_net.html

答案 5 :(得分:0)

有几个数学表达式解析器,例如lundin,但我不确定他们会为你解析一个excel表达式。它必须是优秀的吗?