大規模なAccessVBA/SQLServerアプリケーションがあります。各関数には、同じADODB接続があります。
スペースを節約するために、それらを毎回呼び出すことができる単一の関数に置き換えるにはどうすればよいですか。
Public Function ConnectionString() As ADODB.Connection
Dim CN As ADODB.Connection
Set CN = New ADODB.Connection
With CN
.Provider = "Microsoft.Access.OLEDB.10.0"
.Properties("Data Provider").Value = "SQLOLEDB"
.Properties("Data Source").Value = DLookup("Source", "tbl_Connection")
.Properties("Initial Catalog").Value = DLookup("Catalog", "tbl_Connection")
.Properties("Integrated Security").Value = SSPI
.Open
End With
ConnectionString = CN
End Function
これでその接続が返されるようですが、エラーメッセージが表示されます。
ユーザー定義関数が見つかりません
行にConnectionString = CN
。