我在Excel中有一个子(宏),我希望能够从Access调用,如下所示:
Sub myMacro(param1 as string, param2 as string)
...
End Sub
在Access中,我有:
xlBook.Application.Run "myMacro", string1, string2
但我收到错误:
运行时错误450:
错误的参数数量或非法的财产分配
如何将多个参数传递给Excel?
答案 0 :(得分:1)
根据@ Remou的评论,我检查了传递的变量类型。
在这种情况下,string2
是一个Variant,它应该包含一个数字字符串,但当数字字符串存储在string2
(Variant)中时,它被转换为数字(存储在变体[?]中)。
尽管如此,更严格(因此也是正确的)类型声明解决了这个问题。