Sub ajoutDonneesTable()
'necessite d'activer la reference Microsoft ActiveX Data Objects 2.0 Library
Dim Conn As New ADODB.Connection
Dim rsT As New ADODB.Recordset
Dim LoopRange As Range, CurrCell As Range
Dim nomTable As String
Dim i As Byte
nomTable = 'maTable'
With Conn
' Définition du fournisseur OleDB pour la connexion
.Provider = 'Microsoft.JET.OLEDB.4.0'
' Ouverture d'une connexion
.Open ThisWorkbook.Path & '\\MaBase_V02.mdb'
End With
With rsT
.ActiveConnection = Conn
' Ouverture de la nouvelle table. Pour pouvoir ajouter des
' enregistrements dans la table, l'argument Locktype de la
' méthode Open doit être défini à adLockOptimistic
.Open nomTable, LockType:=adLockOptimistic
End With
' Définition de la plage contenant les enregistrements à
' ajouter à la base de données
Set LoopRange = Feuil1.Range('A2:A' & Feuil1.Range('A2').End(xlDown).Row)
' Parcours des informations dans la feuille de calcul
For Each CurrCell In LoopRange
With rsT
' Ajout d'un nouvel enregistrement
.AddNew
' Ajout des informations dans les champs appropriés
.Fields('Code').Value = CurrCell
.Fields('LesDates').Value = CurrCell.Offset(0, 1)
.Fields('Valeurs').Value = CurrCell.Offset(0, 2)
' Écriture du nouvel enregistrement dans la base de données
.Update
End With
Next CurrCell
rsT.Close
Conn.Close
MsgBox 'Export terminé'
End Sub