我在Visual Studio中有一个C#类库项目,用于扩展VBA项目的功能。
我创建了一个COM可访问类,它在构建时创建了一个TLB文件;我的VBA项目引用了这个TLB文件。
我希望能够将Excel.Range对象从VBA传递给我的C#类;但是我一直收到'无效的程序调用或参数'错误,我不明白为什么。
C#方法:
public void SetMetrics(Excel.Range MetricRange)
{
//Implementation
}
VBA代码:
ObjectName.SetMetrics (SheetName.Range("RangeName"))
测试结果:
FunctionName = ClassName.SetMetrics(SheetName.Range(“RangeName”))
我不明白为什么我有这些限制 - 为什么在将对象传递给我的库时必须返回一个值?
答案 0 :(得分:1)
谢谢Rory - 这是一个VBA语法错误:
答案:“删除VBA中的括号,或使用”呼叫:呼叫“
感谢您快速解决此问题!
最佳