Can范围值2&;公式在C#中有不同的值,而不是VBA?

Can范围值2&;公式在C#中有不同的值,而不是VBA?,c#,excel,range,com-interop,formula,C#,Excel,Range,Com Interop,Formula,我想创建一个UDF,它类似于GetPath(parameter),其中参数可以是一个单元格引用,如“B1”,也可以是一个字符串 根据输入,GetPath将调用web服务来获取输入的路径 e、 g.单元格A1的公式=GetPath(B1),单元格B1有一些字符串,函数应该返回path并将其放入单元格A1,即A1的“Value2”应该是B1的路径 现在在C#中,当我做某事FormulaCell.Value2=path时,它的公式也改变了 但我希望“公式”和“价值2”有所不同 我知道这在VBA中是可能

我想创建一个
UDF
,它类似于
GetPath(parameter)
,其中参数可以是一个单元格引用,如
“B1”
,也可以是一个字符串 根据输入,
GetPath
将调用web服务来获取输入的路径 e、 g.单元格
A1的公式=GetPath(B1)
,单元格
B1
有一些字符串,函数应该返回path并将其放入单元格A1,即A1的
“Value2”
应该是B1的路径

现在在C#中,当我做某事
FormulaCell.Value2=path
时,它的公式也改变了 但我希望“公式”和“价值2”有所不同

我知道这在VBA中是可能的,但我使用的是C

有人知道如何做到这一点吗

谢谢

我搜索了,搜索了,仍然没有找到解决方案。 这听起来像是一个基本功能,但在C#中是不可能的。至少这是我通过研究得到的。我相信你们中的一些人以前也遇到过同样的问题,只是想知道你们是如何解决的


我将在VB.NET中尝试这一点,如果可行,那么我将在C#中引用它。如果有人知道在VB.NET,请也张贴。谢谢

我的加载项是COM加载项,它不可能使range.value2与range.formula不同 无论是C#还是VB.NET

这可以使用VBA、.NET中的自动化加载项或xll加载项来完成。 对于xll插件,您可以使用C/C++编写,也可以使用现有的工具,如ExcelDNA、managedXLL、XLW等