我编写了一个 C# COM(自动化)加载项,我正在使用 Excel 2010 x64 进行测试,在 Windows 7 上运行。它定义了许多用户定义的公式。让我们以一个示例 UDF 为例,它有两个字符串作为参数,首先使用文字调用,然后使用单元格引用:
=MyFunction("A","B")
=MyFunction(A1,B1)
如果区域设置 = 英语,那么这两个都有效。
如果我将区域设置设置为法语并重新打开工作簿,Excel 已将公式更改为:
=MyFunction("A";"B")
=MyFunction(A1;B1)
第一个(带有文字)仍然有效。第二个现在不起作用=它只是返回#VALUE!
,甚至没有调用我的托管 UDF 代码(使用 Visual Studio 2010 进行调试)。
为什么是这样?