importer données excel dans une table access

ben compta

XLDnaute Nouveau
Bonjour,

Dans le cadre d'un stage, j'ai à mettre en place un système de message d'alerte par mail.

Pour faire simple, l'utilisateur ouvre un fichier excel, renseigne les données nécessaires dans une première feuille.
Ensuite, il active une macro qui va envoyer ces données dans une table access afin d'archiver les données du message.

Voici comment j'ai conçu la macro afin de réaliser cette tache :

Sub importation()

'1) définition des applications
Dim appAS As Access.Application, wbXL As Excel.Application

'2) ouverture d' access
Set wbXL = CreateObject("access.Application")
appAS.Visible = False

With appAS

'3) ouverture fichier reporting_mailing.mdb

Workbooks.OpenDatabase Filename:="C:\Documents and Settings\Benjamin Corroy\Mes documents\reporting_mailing.mdb", _
CommandText:="Orders", _
CommandType:=xlCmdTable, _
BackgroundQuery:=True, _
ImportDataAs:=xlPivotTableReport


'4) importation des données à partir de cellules ciblées de la feuille alerte, du fichier test.xls

DoCmd.TransferSpreadsheet acImport(acSpreadsheetTypeExcel9, TableAlerte, "C:\Documents and Settings\Benjamin Corroy\Mes documents\test.xls", Feuilles.alerte & "!A2:G2")


'5) fermeture Access
appAS.Quit

End Sub


lors du debogage, le message suivant apparait au niveau de l'étape 4 (acImport) :

erreur de compilation : Table attendu


Etant novice en la matière j'espère que chaque étape est bien écrite
j'aimerais savoir pourquoi l'étape 4 bloque ainsi.

Merci d'avance
 

ben compta

XLDnaute Nouveau
Re : importer données excel dans une table access

Merci pour l'info.
j'ai rajouté les guillemets, mais le même message d'erreur continue à apparaître.
Il se peut que la macro ne trouve pas la table alerte et donc que l'erreur se trouve en étape 3.
 

ben compta

XLDnaute Nouveau
Re : importer données excel dans une table access

j'ai finalement trouver une solution :

Sub alerte()

'ouverture du fichier access
Dim objAccess As New Access.Application
objAccess.OpenCurrentDatabase "\\Acd\stage benjamin\base de données\reporting_mailing.mdb"
objAccess.Visible = True

'execution de la macro access afin d'importer les données
objAccess.DoCmd.RunMacro "alerte"

End Sub

En gros, j'ouvre le fichier access et j'y active une macro qui importe les données voulues.

c'est aussi simple que ça :)
 

Discussions similaires

Statistiques des forums

Discussions
312 392
Messages
2 087 990
Membres
103 691
dernier inscrit
christophe89