VBA //在存储过程(mssql)中设置变量// ADODB

时间:2016-05-09 12:20:57

标签: vba stored-procedures ado

我在mssql服务器上有一个存储过程,包括一个本地变量名" path"是否有可能将此变量设置为vba? 在vba中我得到一个文件的路径,这个路径需要存储过程来完成一些工作... 我该如何设置这个变量?

THX!

2 个答案:

答案 0 :(得分:0)

是的,您可以从VBA运行Sproc。

Sub RunSP()

Dim con As Connection
Dim rst As Recordset

Set con = New Connection
con.Open "Provider=SQLOLEDB;Data Source=ServerName;Initial Catalog=DatabaseName;Integrated Security=SSPI;"

Set rst = con.Execute("Exec dbo.[Ten Most Expensive Products]")
ActiveSheet.Range("A1").CopyFromRecordset rst

rst.Close
con.Close
End Sub

你是说这条路是在通话中吗?如果你想要一个单元格的值,只需引用它。

ThePath = Sheets("Sheet1").Range("A1").Value

答案 1 :(得分:0)

我明白了。包含'非常重要。 '在参数/变量中。

示例:

@qry = "procedure-Name" @ PATH <- in this Variable you must include ' ' to set the Parameter in the stored procedure - blank is not necessary!!

然后:

cn.Execute qry