Ajout de données Excel dans une table Access

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Sly le globe trotter

XLDnaute Occasionnel
Bonjour le forum !

Tout d'abord merci pour l'aide précieuse apportée par tous les contributeurs ! ça facilite grandement les choses.

Je cherche à exporter à partir d'Excel des informations dans des tables Access. En recherchant sur le forum j'ai trouvé plusieurs messages qui m'ont permis de me lancer. Sauf que cette fois je coince...

Je souhaite exporter deux plages de valeurs dans deux tables différentes qui existent déjà sous Access. Sous Excel j'ai crée les plages de valeurs à rentrer sous Access.

Voici mon code :

Sub AjoutTable()

Dim Cat As New ADOX.Catalog
Dim Tbl As New ADOX.Table
Dim Conn As New ADODB.Connection
Dim rsT As New ADODB.Recordset
Dim maNouvelleTable As String
Dim i As Byte
Dim L As Long, C As Byte
Dim j As Integer
Dim Path As String

Path = "C:\essai\"

maNouvelleTable = Table1

With Conn
.Provider = "Microsoft.JET.OLEDB.4.0"
.Open Path & BaseMDB
End With

With rsT
.ActiveConnection = Conn
.Open maNouvelleTable, LockType:=adLockOptimistic
End With

For L = 1 To UBound(TabPlage1)
With rsT
' Ajout d'un nouvel enregistrement
.AddNew

' Parcours des informations dans la feuille de calcul
For C = 1 To 18
.Fields(C - 1).Value = TabPlage1(L, C)
Next

' Écriture du nouvel enregistrement dans la base de données
.Update
End With
Next L

rsT.Close
Set Tbl = Nothing
Set Cat = Nothing
Conn.Close

MsgBox "Export terminé"
End Sub

ça coince à l'éxécution à la ligne suivante : .Open maNouvelleTable, LockType:=adLockOptimistic.
Le message d'erreur apparait : Erreur d'éxécution '-2147217900 (80040e14)': Instruction SQL non valide; 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT' ou 'UPDATE attendus.

Je n'arrive pas à corriger ce problème. Quelqu'un peut-il m'orienter svp ? Merci !
 
Re : Ajout de données Excel dans une table Access

Tout compte fait, tout n'est pas si rose... Si je change le nom de mes tables, ça crée un pataques assez énorme vu la taille de la base et le nombre de formulaires, états, macros, requêtes...

Donc je me suis rabattu sur l'autre solution, essayer d'ouvrir une table dont le nom contient un espace.

Code:
With rsT
    .ActiveConnection = Conn
    .Open Table1, LockType:=adLockOptimistic
End With

Avec Table1 définit comme constante au début du code.

Dans les bouquins ou forums que j'ai consulté, je n'ai rien trouvé à ce sujet. auriez-vous une solution ?

Merci
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
881
Retour