如何将连接传递给vba中的方法?

时间:2014-07-23 20:44:21

标签: vba

我正在尝试将adodb.connection对象传递给方法,但是会出现编译错误

Sub Test()
Set conn = CreateObject("ADODB.Connection") 'also tried set conn = new ADODB.Connection
conString = "xxx"
conn.Open conString
Call routine(conn)
End Sub

Sub routine (conn As ADODB.Connection) 'also tried (conn As Connection)
...
End Sub

错误为ByRef Argument type mismatch。如何将连接对象传递给子例程?

1 个答案:

答案 0 :(得分:2)

请改用set conn = new ADODB.Connection

同时将其声明为Dim conn as ADODB.Connection

显示你的conn声明。通过键入SHIFT-F2确保您正在查看conn的正确声明,同时突出显示方法Test中的conn实例。

如果括号将您的l值转换为r值,请尝试将Call routine(conn)替换为routine conn