2015-08-31 4 views
1

Я пишу VBA код для записи данных из SQL Server, нет никаких проблем с подключением., Но когда я отладки кода в системе записи часть набора бросает ошибкуобъект не поддерживает именованные аргументы

выполнения 446 объект не поддерживает именованные аргументы

Вот мой код

`Sub CopyfromDatabase() 
Dim conn As ADODB.Connection 
Dim RecordConn As ADODB.Connection 
Set conn = New ADODB.Connection 
Set RecordConn = New ADODB.Connection 
conn.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;Data Source=PH03\Historian;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=OCG;Use Encryption for Data=False;Tag with column collation when possible=False;Initial Catalog=HistorianStorage" 
conn.Open 
'On Error GoTo CloseConnection 
With RecordConn 
.ActiveConnection = conn 
.Source = "connectiontable" 
.LockType = adLockReadOnly 
.CursorType = adforwardonly 
.Open 
End With 
On Error GoTo CloseRecord 
Worksheets.Add 
Range("A2").CopyFromRecordset RecordConn 
CloseRecord: 
RecordConn.Close 
'CloseConnection: 
conn.Close 
End Sub` 

Помогите !!

+0

Попробуйте 'Set .ActiveConnection = conn' –

+0

Нет, появляется та же ошибка .. – RJ10

+0

Конкретную линия выдает ошибку? –

ответ

2
Dim RecordConn As ADODB.Connection 
Set RecordConn = New ADODB.Connection 

должен быть

Dim RecordConn As ADODB.Recordset 
Set RecordConn = New ADODB.Recordset 
+0

К сожалению, я пропустил это., Отлично .. надеюсь, что это сработает .. – RJ10

Смежные вопросы