在EXCEL中调用带参数的SQLSERVER存储过程的实例


Global Const GC_str_DBOPEN As String = "ODBC;DSN=TestHigh;UID=SKYMAN;PWD=help;DATABASE=SkyHigh"
'WeeklyのFrom dateとTo Dateをパラメータとしてストアドプロシージャpr_rpt_itm_salesを実行する。
'データをテーブルにセットする。
Function CallSQLProcedure(dateFrom As String, dateTo As String) As Boolean
Dim skyHighWorkspace As Workspace
Dim skyHighDB As Database
Dim conn As Connection
On Error GoTo errorline
' ODBCDirect Workspace オブジェクトを作成します。
Set skyHighWorkspace = CreateWorkspace("skyHighWorkspace", _
"SKYMAN", "help", dbUseODBC)
Set conn = skyHighWorkspace.OpenConnection("Connection1", , , _
GC_str_DBOPEN)
'ストアドプロシージャのパラメータを設定する
conn.CreateQueryDef "pr_rpt_itm_sales", "exec dbo.pr_rpt_itm_sales @fromdate ='" & dateFrom & "', @todate ='" & dateTo & "'"
'ストアドプロシージャを実行する
conn.QueryDefs("pr_rpt_itm_sales").Execute
conn.Close
CallSQLProcedure = True
Exit Function
errorline:
CallSQLProcedure = False
End Function
posted on 2009-02-12 15:17 WayToDotNET 阅读(554) 评论(0) 收藏 举报