Bonjour, Je souhaiterais connaitre la méthode pour créer un bouton pour
automatiser l'importation d'un fichier excel dans access.
La table est toujours la même mais le nom de fichier sera différent.
Est-il possible lorque l'on clique sur le bouton, que l'on demande d'aller
selectionner le fichier?
Cordialement.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
3stone
Salut,
"Nadyajah" | Bonjour, Je souhaiterais connaitre la méthode pour créer un bouton pour | automatiser l'importation d'un fichier excel dans access. | La table est toujours la même mais le nom de fichier sera différent. | Est-il possible lorque l'on clique sur le bouton, que l'on demande d'aller | selectionner le fichier?
Pour sélectionner le fichier : http://www.3stone.be/access/articles.php?lng=fr&pg3
ensuite, pour importer, tu peux utiliser la commande :
"Nadyajah"
| Bonjour, Je souhaiterais connaitre la méthode pour créer un bouton pour
| automatiser l'importation d'un fichier excel dans access.
| La table est toujours la même mais le nom de fichier sera différent.
| Est-il possible lorque l'on clique sur le bouton, que l'on demande d'aller
| selectionner le fichier?
Pour sélectionner le fichier :
http://www.3stone.be/access/articles.php?lng=fr&pg3
ensuite, pour importer, tu peux utiliser la commande :
"Nadyajah" | Bonjour, Je souhaiterais connaitre la méthode pour créer un bouton pour | automatiser l'importation d'un fichier excel dans access. | La table est toujours la même mais le nom de fichier sera différent. | Est-il possible lorque l'on clique sur le bouton, que l'on demande d'aller | selectionner le fichier?
Pour sélectionner le fichier : http://www.3stone.be/access/articles.php?lng=fr&pg3
ensuite, pour importer, tu peux utiliser la commande :
Il me répond : "erreur de compilation : type défini par l'utilisateur non défini" Pour information, je suis sous access 2002. Serrait-ce le pb?
De plus, pourrais-tu m'indiquer la fonction exacte à écrire. Avec DoCmd.TransferSpreadsheet(acImport,acSpreadsheetTypeExcel9,[matable],[FileName],[HasFieldNames],[Range],[UseOA]) Que dois-je mettre à [FileName] et la suite?? Sachant que le fichier que je vais importer aura un nom différent à chaque fois?
Merci d'avance.
Bonjour,
Il me répond : "erreur de compilation : type défini par l'utilisateur non
défini"
Pour information, je suis sous access 2002. Serrait-ce le pb?
De plus, pourrais-tu m'indiquer la fonction exacte à écrire.
Avec
DoCmd.TransferSpreadsheet(acImport,acSpreadsheetTypeExcel9,[matable],[FileName],[HasFieldNames],[Range],[UseOA])
Que dois-je mettre à [FileName] et la suite??
Sachant que le fichier que je vais importer aura un nom différent à chaque
fois?
Il me répond : "erreur de compilation : type défini par l'utilisateur non défini" Pour information, je suis sous access 2002. Serrait-ce le pb?
De plus, pourrais-tu m'indiquer la fonction exacte à écrire. Avec DoCmd.TransferSpreadsheet(acImport,acSpreadsheetTypeExcel9,[matable],[FileName],[HasFieldNames],[Range],[UseOA]) Que dois-je mettre à [FileName] et la suite?? Sachant que le fichier que je vais importer aura un nom différent à chaque fois?
Merci d'avance.
3stone
Salut,
"Nadyajah" | Il me répond : "erreur de compilation : type défini par l'utilisateur non | défini" | Pour information, je suis sous access 2002. Serrait-ce le pb?
Regarde tes références...
car il est *écrit* dans la fonction :
'Nécessite la référence microsoft office x.x object library
| De plus, pourrais-tu m'indiquer la fonction exacte à écrire. | Avec | DoCmd.TransferSpreadsheet(acImport,acSpreadsheetTypeExcel9,[matable],[FileName],[HasFieldNames],[Range],[UseOA]) | Que dois-je mettre à [FileName] et la suite?? | Sachant que le fichier que je vais importer aura un nom différent à chaque | fois?
la variable qui contient le chemin et le nom du fichie !
"Nadyajah"
| Il me répond : "erreur de compilation : type défini par l'utilisateur non
| défini"
| Pour information, je suis sous access 2002. Serrait-ce le pb?
Regarde tes références...
car il est *écrit* dans la fonction :
'Nécessite la référence microsoft office x.x object library
| De plus, pourrais-tu m'indiquer la fonction exacte à écrire.
| Avec
|
DoCmd.TransferSpreadsheet(acImport,acSpreadsheetTypeExcel9,[matable],[FileName],[HasFieldNames],[Range],[UseOA])
| Que dois-je mettre à [FileName] et la suite??
| Sachant que le fichier que je vais importer aura un nom différent à chaque
| fois?
la variable qui contient le chemin et le nom du fichie !
"Nadyajah" | Il me répond : "erreur de compilation : type défini par l'utilisateur non | défini" | Pour information, je suis sous access 2002. Serrait-ce le pb?
Regarde tes références...
car il est *écrit* dans la fonction :
'Nécessite la référence microsoft office x.x object library
| De plus, pourrais-tu m'indiquer la fonction exacte à écrire. | Avec | DoCmd.TransferSpreadsheet(acImport,acSpreadsheetTypeExcel9,[matable],[FileName],[HasFieldNames],[Range],[UseOA]) | Que dois-je mettre à [FileName] et la suite?? | Sachant que le fichier que je vais importer aura un nom différent à chaque | fois?
la variable qui contient le chemin et le nom du fichie !
désolée mais je ne suis pas une réelle experte en access comme tu as pu le remarquer. Qu'est-ce que : "microsoft office x.x object library". Ou je trouve ce truc? Pour "[FileName]" j'ai bien compris qu'il me demandait le nom du fichier mais vu qe son nom sera différent à chaque fois c'est pour cela que je voulais ouvrir une boite de dialogue pour que la personne aille sélectionner le fichier en question. Par contre le nom de la table est lui bien le même à chaque fois.
Merci d'avance pour ton aide .... a+
Salut,
"Nadyajah" | Il me répond : "erreur de compilation : type défini par l'utilisateur non | défini" | Pour information, je suis sous access 2002. Serrait-ce le pb?
Regarde tes références...
car il est *écrit* dans la fonction :
'Nécessite la référence microsoft office x.x object library
| De plus, pourrais-tu m'indiquer la fonction exacte à écrire. | Avec | DoCmd.TransferSpreadsheet(acImport,acSpreadsheetTypeExcel9,[matable],[FileName],[HasFieldNames],[Range],[UseOA]) | Que dois-je mettre à [FileName] et la suite?? | Sachant que le fichier que je vais importer aura un nom différent à chaque | fois?
la variable qui contient le chemin et le nom du fichie !
désolée mais je ne suis pas une réelle experte en access comme tu as pu le
remarquer. Qu'est-ce que : "microsoft office x.x object library". Ou je
trouve ce truc?
Pour "[FileName]" j'ai bien compris qu'il me demandait le nom du fichier
mais vu qe son nom sera différent à chaque fois c'est pour cela que je
voulais ouvrir une boite de dialogue pour que la personne aille sélectionner
le fichier en question. Par contre le nom de la table est lui bien le même à
chaque fois.
Merci d'avance pour ton aide ....
a+
Salut,
"Nadyajah"
| Il me répond : "erreur de compilation : type défini par l'utilisateur non
| défini"
| Pour information, je suis sous access 2002. Serrait-ce le pb?
Regarde tes références...
car il est *écrit* dans la fonction :
'Nécessite la référence microsoft office x.x object library
| De plus, pourrais-tu m'indiquer la fonction exacte à écrire.
| Avec
|
DoCmd.TransferSpreadsheet(acImport,acSpreadsheetTypeExcel9,[matable],[FileName],[HasFieldNames],[Range],[UseOA])
| Que dois-je mettre à [FileName] et la suite??
| Sachant que le fichier que je vais importer aura un nom différent à chaque
| fois?
la variable qui contient le chemin et le nom du fichie !
désolée mais je ne suis pas une réelle experte en access comme tu as pu le remarquer. Qu'est-ce que : "microsoft office x.x object library". Ou je trouve ce truc? Pour "[FileName]" j'ai bien compris qu'il me demandait le nom du fichier mais vu qe son nom sera différent à chaque fois c'est pour cela que je voulais ouvrir une boite de dialogue pour que la personne aille sélectionner le fichier en question. Par contre le nom de la table est lui bien le même à chaque fois.
Merci d'avance pour ton aide .... a+
Salut,
"Nadyajah" | Il me répond : "erreur de compilation : type défini par l'utilisateur non | défini" | Pour information, je suis sous access 2002. Serrait-ce le pb?
Regarde tes références...
car il est *écrit* dans la fonction :
'Nécessite la référence microsoft office x.x object library
| De plus, pourrais-tu m'indiquer la fonction exacte à écrire. | Avec | DoCmd.TransferSpreadsheet(acImport,acSpreadsheetTypeExcel9,[matable],[FileName],[HasFieldNames],[Range],[UseOA]) | Que dois-je mettre à [FileName] et la suite?? | Sachant que le fichier que je vais importer aura un nom différent à chaque | fois?
la variable qui contient le chemin et le nom du fichie !
"Nadyajah" | désolée mais je ne suis pas une réelle experte en access comme tu as pu le | remarquer. Qu'est-ce que : "microsoft office x.x object library". Ou je | trouve ce truc?
Alt + F11 t'envoi dans l'éditeur (VBE) du VBA Ensuite, menu Outils, Références... Dans la liste, tu recherche et coche "Microsoft Office 11.0 Object Library" Puis, par le menu "Débogage, Compiler..."
Tu ne dois plus avoir de message d'erreur !
| Pour "[FileName]" j'ai bien compris qu'il me demandait le nom du fichier | mais vu qe son nom sera différent à chaque fois c'est pour cela que je | voulais ouvrir une boite de dialogue pour que la personne aille sélectionner | le fichier en question. Par contre le nom de la table est lui bien le même à | chaque fois.
Tu te crée ton bouton (sans l'assistant) et tu mets quelque chose comme :
Dim strFile As String strFile = fOpenFiles() DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "LaTable", strFile
"Nadyajah"
| désolée mais je ne suis pas une réelle experte en access comme tu as pu le
| remarquer. Qu'est-ce que : "microsoft office x.x object library". Ou je
| trouve ce truc?
Alt + F11 t'envoi dans l'éditeur (VBE) du VBA
Ensuite, menu Outils, Références...
Dans la liste, tu recherche et coche "Microsoft Office 11.0 Object Library"
Puis, par le menu "Débogage, Compiler..."
Tu ne dois plus avoir de message d'erreur !
| Pour "[FileName]" j'ai bien compris qu'il me demandait le nom du fichier
| mais vu qe son nom sera différent à chaque fois c'est pour cela que je
| voulais ouvrir une boite de dialogue pour que la personne aille sélectionner
| le fichier en question. Par contre le nom de la table est lui bien le même à
| chaque fois.
Tu te crée ton bouton (sans l'assistant) et tu mets quelque chose comme :
Dim strFile As String
strFile = fOpenFiles()
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "LaTable", strFile
"Nadyajah" | désolée mais je ne suis pas une réelle experte en access comme tu as pu le | remarquer. Qu'est-ce que : "microsoft office x.x object library". Ou je | trouve ce truc?
Alt + F11 t'envoi dans l'éditeur (VBE) du VBA Ensuite, menu Outils, Références... Dans la liste, tu recherche et coche "Microsoft Office 11.0 Object Library" Puis, par le menu "Débogage, Compiler..."
Tu ne dois plus avoir de message d'erreur !
| Pour "[FileName]" j'ai bien compris qu'il me demandait le nom du fichier | mais vu qe son nom sera différent à chaque fois c'est pour cela que je | voulais ouvrir une boite de dialogue pour que la personne aille sélectionner | le fichier en question. Par contre le nom de la table est lui bien le même à | chaque fois.
Tu te crée ton bouton (sans l'assistant) et tu mets quelque chose comme :
Dim strFile As String strFile = fOpenFiles() DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "LaTable", strFile
Merci beaucoup. Effectivement il me fait bien l'import et me demande de sélectionner le fichier. Cependant, petit bug il me dit "erreur d'exécution 2391 : le champ F1 n'existe pas dans la table destination 'matable' Je pense que cela est du au fait que la première ligne contienne les en-têtes"
Salut,
"Nadyajah" | désolée mais je ne suis pas une réelle experte en access comme tu as pu le | remarquer. Qu'est-ce que : "microsoft office x.x object library". Ou je | trouve ce truc?
Alt + F11 t'envoi dans l'éditeur (VBE) du VBA Ensuite, menu Outils, Références... Dans la liste, tu recherche et coche "Microsoft Office 11.0 Object Library" Puis, par le menu "Débogage, Compiler..."
Tu ne dois plus avoir de message d'erreur !
| Pour "[FileName]" j'ai bien compris qu'il me demandait le nom du fichier | mais vu qe son nom sera différent à chaque fois c'est pour cela que je | voulais ouvrir une boite de dialogue pour que la personne aille sélectionner | le fichier en question. Par contre le nom de la table est lui bien le même à | chaque fois.
Tu te crée ton bouton (sans l'assistant) et tu mets quelque chose comme :
Dim strFile As String strFile = fOpenFiles() DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "LaTable", strFile
Merci beaucoup. Effectivement il me fait bien l'import et me demande de
sélectionner le fichier. Cependant, petit bug il me dit "erreur d'exécution
2391 : le champ F1 n'existe pas dans la table destination 'matable'
Je pense que cela est du au fait que la première ligne contienne les en-têtes"
Salut,
"Nadyajah"
| désolée mais je ne suis pas une réelle experte en access comme tu as pu le
| remarquer. Qu'est-ce que : "microsoft office x.x object library". Ou je
| trouve ce truc?
Alt + F11 t'envoi dans l'éditeur (VBE) du VBA
Ensuite, menu Outils, Références...
Dans la liste, tu recherche et coche "Microsoft Office 11.0 Object Library"
Puis, par le menu "Débogage, Compiler..."
Tu ne dois plus avoir de message d'erreur !
| Pour "[FileName]" j'ai bien compris qu'il me demandait le nom du fichier
| mais vu qe son nom sera différent à chaque fois c'est pour cela que je
| voulais ouvrir une boite de dialogue pour que la personne aille sélectionner
| le fichier en question. Par contre le nom de la table est lui bien le même à
| chaque fois.
Tu te crée ton bouton (sans l'assistant) et tu mets quelque chose comme :
Dim strFile As String
strFile = fOpenFiles()
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "LaTable", strFile
Merci beaucoup. Effectivement il me fait bien l'import et me demande de sélectionner le fichier. Cependant, petit bug il me dit "erreur d'exécution 2391 : le champ F1 n'existe pas dans la table destination 'matable' Je pense que cela est du au fait que la première ligne contienne les en-têtes"
Salut,
"Nadyajah" | désolée mais je ne suis pas une réelle experte en access comme tu as pu le | remarquer. Qu'est-ce que : "microsoft office x.x object library". Ou je | trouve ce truc?
Alt + F11 t'envoi dans l'éditeur (VBE) du VBA Ensuite, menu Outils, Références... Dans la liste, tu recherche et coche "Microsoft Office 11.0 Object Library" Puis, par le menu "Débogage, Compiler..."
Tu ne dois plus avoir de message d'erreur !
| Pour "[FileName]" j'ai bien compris qu'il me demandait le nom du fichier | mais vu qe son nom sera différent à chaque fois c'est pour cela que je | voulais ouvrir une boite de dialogue pour que la personne aille sélectionner | le fichier en question. Par contre le nom de la table est lui bien le même à | chaque fois.
Tu te crée ton bouton (sans l'assistant) et tu mets quelque chose comme :
Dim strFile As String strFile = fOpenFiles() DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "LaTable", strFile
Effectivement chaque champ est nommé "F1","F2","F3" ... Il faut donc qu'il conserve les en-têtes, qu'il attribue un clé primaire (là il n'en créé pas) et qu'il puisse conserver le nom du fichier importé dans la table. En effet, j'ai un champ "nom fichier import" et je voudrais bien qu'il me le complète en automatique. Merci.
Re,
Merci beaucoup. Effectivement il me fait bien l'import et me demande de sélectionner le fichier. Cependant, petit bug il me dit "erreur d'exécution 2391 : le champ F1 n'existe pas dans la table destination 'matable' Je pense que cela est du au fait que la première ligne contienne les en-têtes"
Salut,
"Nadyajah" | désolée mais je ne suis pas une réelle experte en access comme tu as pu le | remarquer. Qu'est-ce que : "microsoft office x.x object library". Ou je | trouve ce truc?
Alt + F11 t'envoi dans l'éditeur (VBE) du VBA Ensuite, menu Outils, Références... Dans la liste, tu recherche et coche "Microsoft Office 11.0 Object Library" Puis, par le menu "Débogage, Compiler..."
Tu ne dois plus avoir de message d'erreur !
| Pour "[FileName]" j'ai bien compris qu'il me demandait le nom du fichier | mais vu qe son nom sera différent à chaque fois c'est pour cela que je | voulais ouvrir une boite de dialogue pour que la personne aille sélectionner | le fichier en question. Par contre le nom de la table est lui bien le même à | chaque fois.
Tu te crée ton bouton (sans l'assistant) et tu mets quelque chose comme :
Dim strFile As String strFile = fOpenFiles() DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "LaTable", strFile
Effectivement chaque champ est nommé "F1","F2","F3" ...
Il faut donc qu'il conserve les en-têtes, qu'il attribue un clé primaire (là
il n'en créé pas) et qu'il puisse conserver le nom du fichier importé dans la
table.
En effet, j'ai un champ "nom fichier import" et je voudrais bien qu'il me le
complète en automatique.
Merci.
Re,
Merci beaucoup. Effectivement il me fait bien l'import et me demande de
sélectionner le fichier. Cependant, petit bug il me dit "erreur d'exécution
2391 : le champ F1 n'existe pas dans la table destination 'matable'
Je pense que cela est du au fait que la première ligne contienne les en-têtes"
Salut,
"Nadyajah"
| désolée mais je ne suis pas une réelle experte en access comme tu as pu le
| remarquer. Qu'est-ce que : "microsoft office x.x object library". Ou je
| trouve ce truc?
Alt + F11 t'envoi dans l'éditeur (VBE) du VBA
Ensuite, menu Outils, Références...
Dans la liste, tu recherche et coche "Microsoft Office 11.0 Object Library"
Puis, par le menu "Débogage, Compiler..."
Tu ne dois plus avoir de message d'erreur !
| Pour "[FileName]" j'ai bien compris qu'il me demandait le nom du fichier
| mais vu qe son nom sera différent à chaque fois c'est pour cela que je
| voulais ouvrir une boite de dialogue pour que la personne aille sélectionner
| le fichier en question. Par contre le nom de la table est lui bien le même à
| chaque fois.
Tu te crée ton bouton (sans l'assistant) et tu mets quelque chose comme :
Dim strFile As String
strFile = fOpenFiles()
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "LaTable", strFile
Effectivement chaque champ est nommé "F1","F2","F3" ... Il faut donc qu'il conserve les en-têtes, qu'il attribue un clé primaire (là il n'en créé pas) et qu'il puisse conserver le nom du fichier importé dans la table. En effet, j'ai un champ "nom fichier import" et je voudrais bien qu'il me le complète en automatique. Merci.
Re,
Merci beaucoup. Effectivement il me fait bien l'import et me demande de sélectionner le fichier. Cependant, petit bug il me dit "erreur d'exécution 2391 : le champ F1 n'existe pas dans la table destination 'matable' Je pense que cela est du au fait que la première ligne contienne les en-têtes"
Salut,
"Nadyajah" | désolée mais je ne suis pas une réelle experte en access comme tu as pu le | remarquer. Qu'est-ce que : "microsoft office x.x object library". Ou je | trouve ce truc?
Alt + F11 t'envoi dans l'éditeur (VBE) du VBA Ensuite, menu Outils, Références... Dans la liste, tu recherche et coche "Microsoft Office 11.0 Object Library" Puis, par le menu "Débogage, Compiler..."
Tu ne dois plus avoir de message d'erreur !
| Pour "[FileName]" j'ai bien compris qu'il me demandait le nom du fichier | mais vu qe son nom sera différent à chaque fois c'est pour cela que je | voulais ouvrir une boite de dialogue pour que la personne aille sélectionner | le fichier en question. Par contre le nom de la table est lui bien le même à | chaque fois.
Tu te crée ton bouton (sans l'assistant) et tu mets quelque chose comme :
Dim strFile As String strFile = fOpenFiles() DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "LaTable", strFile
Si ton fichier contient les en-têtes de champ, il te suffit de modifier la ligne DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, _ "LaTable", strFile
par DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, _ "LaTable", strFile, True
@+ Jessy Sempere - Access MVP
------------------------------------ Site @ccess : http://access.jessy.free.fr/ Pour l'efficacité de tous : http://www.mpfa.info/ ------------------------------------ "Nadyajah" a écrit dans le message de news:
Effectivement chaque champ est nommé "F1","F2","F3" ... Il faut donc qu'il conserve les en-têtes, qu'il attribue un clé primaire (là
il n'en créé pas) et qu'il puisse conserver le nom du fichier importé dans la
table. En effet, j'ai un champ "nom fichier import" et je voudrais bien qu'il me le
complète en automatique. Merci.
Re,
Merci beaucoup. Effectivement il me fait bien l'import et me demande de sélectionner le fichier. Cependant, petit bug il me dit "erreur d'exécution
2391 : le champ F1 n'existe pas dans la table destination 'matable' Je pense que cela est du au fait que la première ligne contienne les en-têtes"
Salut,
"Nadyajah" | désolée mais je ne suis pas une réelle experte en access comme tu as pu le
| remarquer. Qu'est-ce que : "microsoft office x.x object library". Ou je
| trouve ce truc?
Alt + F11 t'envoi dans l'éditeur (VBE) du VBA Ensuite, menu Outils, Références... Dans la liste, tu recherche et coche "Microsoft Office 11.0 Object Library"
Puis, par le menu "Débogage, Compiler..."
Tu ne dois plus avoir de message d'erreur !
| Pour "[FileName]" j'ai bien compris qu'il me demandait le nom du fichier
| mais vu qe son nom sera différent à chaque fois c'est pour cela que je
| voulais ouvrir une boite de dialogue pour que la personne aille sélectionner
| le fichier en question. Par contre le nom de la table est lui bien le même à
| chaque fois.
Tu te crée ton bouton (sans l'assistant) et tu mets quelque chose comme :
Dim strFile As String strFile = fOpenFiles() DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "LaTable", strFile
Si ton fichier contient les en-têtes de champ, il te suffit de modifier la
ligne
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, _
"LaTable", strFile
par
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, _
"LaTable", strFile, True
@+
Jessy Sempere - Access MVP
news@access.fr.vu
------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://www.mpfa.info/
------------------------------------
"Nadyajah" <Nadyajah@discussions.microsoft.com> a écrit dans le message de
news:E27722C6-9794-44E3-8A88-6BC6A08D86A8@microsoft.com...
Effectivement chaque champ est nommé "F1","F2","F3" ...
Il faut donc qu'il conserve les en-têtes, qu'il attribue un clé primaire
(là
il n'en créé pas) et qu'il puisse conserver le nom du fichier importé dans
la
table.
En effet, j'ai un champ "nom fichier import" et je voudrais bien qu'il me
le
complète en automatique.
Merci.
Re,
Merci beaucoup. Effectivement il me fait bien l'import et me demande de
sélectionner le fichier. Cependant, petit bug il me dit "erreur
d'exécution
2391 : le champ F1 n'existe pas dans la table destination 'matable'
Je pense que cela est du au fait que la première ligne contienne les
en-têtes"
Salut,
"Nadyajah"
| désolée mais je ne suis pas une réelle experte en access comme tu as
pu le
| remarquer. Qu'est-ce que : "microsoft office x.x object library". Ou
je
| trouve ce truc?
Alt + F11 t'envoi dans l'éditeur (VBE) du VBA
Ensuite, menu Outils, Références...
Dans la liste, tu recherche et coche "Microsoft Office 11.0 Object
Library"
Puis, par le menu "Débogage, Compiler..."
Tu ne dois plus avoir de message d'erreur !
| Pour "[FileName]" j'ai bien compris qu'il me demandait le nom du
fichier
| mais vu qe son nom sera différent à chaque fois c'est pour cela que
je
| voulais ouvrir une boite de dialogue pour que la personne aille
sélectionner
| le fichier en question. Par contre le nom de la table est lui bien
le même à
| chaque fois.
Tu te crée ton bouton (sans l'assistant) et tu mets quelque chose
comme :
Dim strFile As String
strFile = fOpenFiles()
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9,
"LaTable", strFile
Si ton fichier contient les en-têtes de champ, il te suffit de modifier la ligne DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, _ "LaTable", strFile
par DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, _ "LaTable", strFile, True
@+ Jessy Sempere - Access MVP
------------------------------------ Site @ccess : http://access.jessy.free.fr/ Pour l'efficacité de tous : http://www.mpfa.info/ ------------------------------------ "Nadyajah" a écrit dans le message de news:
Effectivement chaque champ est nommé "F1","F2","F3" ... Il faut donc qu'il conserve les en-têtes, qu'il attribue un clé primaire (là
il n'en créé pas) et qu'il puisse conserver le nom du fichier importé dans la
table. En effet, j'ai un champ "nom fichier import" et je voudrais bien qu'il me le
complète en automatique. Merci.
Re,
Merci beaucoup. Effectivement il me fait bien l'import et me demande de sélectionner le fichier. Cependant, petit bug il me dit "erreur d'exécution
2391 : le champ F1 n'existe pas dans la table destination 'matable' Je pense que cela est du au fait que la première ligne contienne les en-têtes"
Salut,
"Nadyajah" | désolée mais je ne suis pas une réelle experte en access comme tu as pu le
| remarquer. Qu'est-ce que : "microsoft office x.x object library". Ou je
| trouve ce truc?
Alt + F11 t'envoi dans l'éditeur (VBE) du VBA Ensuite, menu Outils, Références... Dans la liste, tu recherche et coche "Microsoft Office 11.0 Object Library"
Puis, par le menu "Débogage, Compiler..."
Tu ne dois plus avoir de message d'erreur !
| Pour "[FileName]" j'ai bien compris qu'il me demandait le nom du fichier
| mais vu qe son nom sera différent à chaque fois c'est pour cela que je
| voulais ouvrir une boite de dialogue pour que la personne aille sélectionner
| le fichier en question. Par contre le nom de la table est lui bien le même à
| chaque fois.
Tu te crée ton bouton (sans l'assistant) et tu mets quelque chose comme :
Dim strFile As String strFile = fOpenFiles() DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "LaTable", strFile