ADOを使用して閉じたExcelブックで番号を変更しようとしています。私は2015年にL42によって書かれた以下のコードを発見しました。しかし、この手順は、「1つまたは複数の必須パラメーターに値が指定されていません」というエラーで停止します。何かが足りない場所を見つけることができません!ADOを介して閉じたExcelワークブックへのデータの書き込み/更新
Sub ChangeNum()
Dim con As ADODB.Connection, rec As ADODB.Recordset
Dim sqlstr As String, datasource As String
Set con = New ADODB.Connection: Set rec = New ADODB.Recordset
datasource = "D:\DropBox\TraderShare\TraderNum.xlsx"
Dim sconnect As String
sconnect = "Provider=Microsoft.ACE.OLEDB.12.0;" & _
"Data Source=" & datasource & ";" & _
"Extended Properties=""Excel 12.0 Xml;HDR=YES"";"
con.Open sconnect
sqlstr = "UPDATE [Sheet1$] SET [Number] = ""16900"" WHERE [ID] = INum"
rec.Open sqlstr, con, adOpenUnspecified, adLockUnspecified 'adLockOptimistic , adOpenStatic, adLockReadOnly
con.Close
Set rec = Nothing: Set con = Nothing
End Sub
助けてくれてありがとうございました!
はい、ダグ、まさに私が求めているものです。しかし、私はSQLとADOの知識がほとんどないので、なぜ私は助けを求めているのですか?あなたが見るように、コードの行はほとんどなく、もちろん私が最初にチェックしたのはスペルです。エラーは "rec.Open sqlstr、con、adOpenUnspecified、adLockUnspecified"に設定されています。Open文の**必須の**パラメータはもう見つかりません。 –