Una famiglia di software per fogli di calcolo Microsoft con strumenti per l'analisi, la creazione di grafici e la comunicazione dei dati.
Ciao francisleroy,
un modo potrebbe essere anche questo:
' Module : Modulo1
'
Option Explicit
Public Sub aTest()
On Error GoTo ErrH
Const cstrCnn As String = "Provider=Microsoft.ACE.OLEDB.12.0;" & _
"Extended Properties=""Excel 12.0;HDR=NO"";" & _
"Data Source=<DATASOURCE>;"
Const cstrTblA As String = "[Foglio1$A1:A15000]"
Const cstrTblB As String = "[Foglio1$B1:C250]"
Const cstrSql As String = "UPDATE " & cstrTblA & " A" & _
" INNER JOIN " & cstrTblB & " B" & _
" ON B.F1=A.F1" & _
" SET A.F1=B.F2;"
Const adStateOpen As Long = 1
Const adCmdText As Long = 1
Const adExecuteNoRecords As Long = &H80
Dim cnn As Object 'ADODB.Connection
Dim strCnn As String
Dim lngRecs As Long
strCnn = Replace(cstrCnn, "<DATASOURCE>", ThisWorkbook.FullName)
Set cnn = CreateObject(Class:="ADODB.Connection")
cnn.Open strCnn
If cnn.State = adStateOpen Then
cnn.Execute cstrSql, lngRecs, adCmdText Or adExecuteNoRecords
MsgBox "RecordsAffected=" & CStr(lngRecs)
Else
MsgBox "Connessione chiusa."
End If
ExtP: On Error Resume Next
cnn.Close
Set cnn = Nothing
On Error GoTo 0
Exit Sub
ErrH: MsgBox Err.Description, vbCritical, "ERR#" & Err.Number
Resume ExtP
End Sub