SQL Server 2012 \ Excel 2010を使用しています。Excelは1または2を返すSQL SPを呼び出し、それに基づいて別の処理を実行する必要があります。私はちょうどRS \ SQLのSPから値を参照する場合はfalse \真のMsgBoxを使用している時点ではExcelのVBAクエリレコードセットの値がSQL SPタイプの不一致エラー
Dim con As ADODB.Connection
Dim cmd As ADODB.Command
Dim rs As ADODB.RecordSet
Dim WSP1 As Worksheet
Set con = New ADODB.Connection
Set cmd = New ADODB.Command
Set rs = New ADODB.RecordSet
' Log into our SQL Server, and run the Stored Procedure
con.Open "Provider=SQLOLEDB;Data Source=xxxxxxxx;Initial Catalog=xxxxxxx;Integrated Security=SSPI;Trusted_Connection=Yes;"
cmd.ActiveConnection = con
' Set up the parameter for our Stored Procedure
' (Parameter types can be adVarChar,adDate,adInteger)
cmd.Parameters.Append cmd.CreateParameter("User", adVarChar, adParamInput, 15, Trim(Range("C7").Text))
Application.StatusBar = "Running stored procedure..."
cmd.CommandText = "usp_GL_Code_Access"
Set rs = cmd.Execute(, , adCmdStoredProc)
If rs = 1 Then
MsgBox "true"
Else
MsgBox "false"
rs.Close
Set rs = Nothing
Set cmd = Nothing
con.Close
Set con = Nothing
が、私は「型の不一致」エラーメッセージを受信し続けると、それは
IF rs = 1 Then
を強調
行。
アイデア?
Excelが実際にかかわらず、1または2が表示されますか?私はSPを続行し、それから他に何かする – Michael