我认为情况有所不同。我正在尝试为经常使用的基于Excel的程序编写自定义函数。主要问题是无法在函数中重复使用代码并返回已评估的公式。所以我有了以下想法。我可以使用参数从Excel中提取数据,让vb.net将这些参数放置在代码中,然后在Excel中重新评估它。下面是一个示例。
此代码将位于Excel中的定义名称“源代码”中。
#1. 我将整个公式都作为字符串 #2. 我插入了一些“占位符”,用于传递的两个参数。
现在,两个参数也将放置在定义名称中: 单元格B1(参数1)
Joe
此代码将位于Excel中的定义名称“源代码”中。
="Width+{0}+Height+{1}"
您可以看到有两件事发生了。#1. 我将整个公式都作为字符串 #2. 我插入了一些“占位符”,用于传递的两个参数。
现在,两个参数也将放置在定义名称中: 单元格B1(参数1)
=1+1=2 (单元格可以在Excel中评估)
单元格C1(参数2)=10+10=20 (单元格可以在Excel中评估)
现在就是函数发挥作用的地方。
单元格D1 =myformulaparsingfunction(Source_Code, Argument_1, Argument_2)
在vb.net后端中,我将提取source_code字符串,然后使用参数解析占位符。所以我会得到像这样的东西...
="Width+2+Height+20"
这就是我的问题所在。当我解析公式时,它仍然是一个字符串。我需要一种方法告诉Excel将此字符串作为公式进行评估。如果您们中有人知道如何做到这一点,或者也许有另一种实现我试图做的事情的替代方法,我乐意听取您们的想法。希望上述内容写得足够清楚,以便理解我的编码目的。提前感谢。Joe