Я пытаюсь изменить число в закрытой книге Excel с помощью ADO. Я нашел ниже код, написанный в 2015 году L42. Но процедура останавливается с ошибкой «Нет значения для одного или нескольких требуемых параметров». Я не могу найти, где чего-то не хватает!Запись/обновление данных через 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. –