如何评估vb.net内的Excel公式

在我看来,我有一个相当不同的情况。 我试图为我定期使用的基于excel的程序编写自定义函数。 主要的问题是你不能重用代码的function和返回一个评估公式。 所以我有以下的想法。 我可以从excel中将参数从参数中提取出来,让vb.net把这些参数放在代码中,然后在excel中进行评估。 所以让我举个例子。

这个代码将在excel中被定义为“源代码”。 ="Width+{0}+Height+{1}"正如你所看到的,有两件事情正在进行。
#1。 我正在使整个公式成为一个string#2。 我为我的两个参数插入一些“占位符”

现在这两个参数将被放置在已定义的名称以及单元格B1(参数1) =1+1=2 (Cell can be evaluated in excel)单元格C1(参数2) =10+10=20 (Cell can be evaluated in excel)

现在这里是function发生的地方。 单元格D1 =myformulaparsingfunction(Source_Code, Argument_1, Argument_2)

在vb.net后端,我将拉入source_codestring,然后用参数parsing占位符。 所以我会得到这样的东西… ="Width+2+Height+20"

这是我遇到我的问题。 当我parsing公式它仍然是一个string。 我需要有一种方法来告诉excel来评估这个string作为公式。 如果你们中的任何一个知道如何做到这一点,或者是另一种方法来实现我正在尝试做的事情,我很乐意听取你的意见。 希望上面的内容足够清晰,可以理解我在这个代码中的位置。 提前致谢。

你应该使用Evaluate方法为你想要的。 短样本:

 Dim xlApp As Excel.Application Set xlApp = New Excel.Application xlApp.Visible = False MsgBox xlApp.Evaluate("=5+(10+6)*100") xlApp.Quit Set xlApp = Nothing 

阅读更多: http : //www.xtremevbtalk.com/archive/index.php/t-177848.html