Buonasera,
mi imbatto in un errore quando cerco di copiare il contenuro di un Recordset sulle celle excel.
Errore di runtime '-2147217887 (80040e21)':
Si sono verificati errori in un'operazione OLE DB composta da più passaggi. Controllare i singoli valori di stato OLE
DB, se disponibili. Nessuna operazione eseguita.
Il codice è questo:
Sub connection()
Dim conn1, rs As Object
Dim Dati1 As Object
Dim nErrore As Variant
Dim sDescErrore, IP_Server, Nome_DB, user, password, nome_ODBC, sSQL As String
sSQL = "SELECT * FROM tblcustomer"
Set rs = CreateObject("ADODB.Recordset")
Set conn1 = CreateObject("ADODB.Connection")
conn1.ConnectionTimeout = 60
conn1.CommandTimeout = 6000
conn1.Open "DSN=Salvo;UID=xxx;PWD=xxxx;"
With rs
.CursorLocation = 1
.Open sSQL, conn1, 1, 3, 1
End With
Sheets(2).Range("A2").CopyFromRecordset rs 'qui l'errore!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
RigaChiusura:
If rs.State = 1 Then
rs.Close
End If
If conn1.State = 1 Then
conn1.Close
End If
Set rs = Nothing
Set conn1 = Nothing
Exit Sub
RigaErrore:
MsgBox Err.Number & vbNewLine & Err.Description
Resume RigaChiusura
End Sub
Grazie per il supporto.