{Access} Import/Export automatique Excel
Résolu/Fermé
failp
Messages postés
21
Date d'inscription
mercredi 17 février 2010
Statut
Membre
Dernière intervention
2 avril 2010
-
15 mars 2010 à 18:04
Jean_Jacques Messages postés 1040 Date d'inscription mercredi 30 avril 2008 Statut Membre Dernière intervention 1 août 2014 - 16 mars 2010 à 18:35
Jean_Jacques Messages postés 1040 Date d'inscription mercredi 30 avril 2008 Statut Membre Dernière intervention 1 août 2014 - 16 mars 2010 à 18:35
A voir également:
- {Access} Import/Export automatique Excel
- Liste déroulante excel - Guide
- Si et excel - Guide
- Message automatique thunderbird - Guide
- Aller à la ligne excel - Guide
- Somme automatique excel - Guide
3 réponses
Jean_Jacques
Messages postés
1040
Date d'inscription
mercredi 30 avril 2008
Statut
Membre
Dernière intervention
1 août 2014
112
16 mars 2010 à 09:20
16 mars 2010 à 09:20
Bonjour failp,
Hypothétiquement, et si tous les fichiers sont sur le même ordinateur ou réseau, la
solution des fichiers Excel attachés à une base ACCESS est une solution plausible.
Le gros avantage : Ce système de gestion exclu les manipulations d'import-export.
Cordialement
Hypothétiquement, et si tous les fichiers sont sur le même ordinateur ou réseau, la
solution des fichiers Excel attachés à une base ACCESS est une solution plausible.
Le gros avantage : Ce système de gestion exclu les manipulations d'import-export.
Cordialement
failp
Messages postés
21
Date d'inscription
mercredi 17 février 2010
Statut
Membre
Dernière intervention
2 avril 2010
16 mars 2010 à 17:59
16 mars 2010 à 17:59
Merci sauf que je souhaiterai que des fichiers excel créés soient automatiquement importés.
Attaché un fichier Excel à une base doit être fait manuellement au moins une fois et ensuite quand des données sont ajoutées aux fichers Excel elles sont automatiquement importées dans la table access.
Moi je voudrais que quand un fichier Excel est ajouté dans un répertoire, il soit ajouté dans la base access. Pas forcément automatiquement mais par exemple en lançant un programme type module dans access. Un programme qui reconnait les fichiers pas encore importés et qui les importe.
Je sais pas si je suis très claire, désolé si ce n'est pas le cas
Attaché un fichier Excel à une base doit être fait manuellement au moins une fois et ensuite quand des données sont ajoutées aux fichers Excel elles sont automatiquement importées dans la table access.
Moi je voudrais que quand un fichier Excel est ajouté dans un répertoire, il soit ajouté dans la base access. Pas forcément automatiquement mais par exemple en lançant un programme type module dans access. Un programme qui reconnait les fichiers pas encore importés et qui les importe.
Je sais pas si je suis très claire, désolé si ce n'est pas le cas
Jean_Jacques
Messages postés
1040
Date d'inscription
mercredi 30 avril 2008
Statut
Membre
Dernière intervention
1 août 2014
112
16 mars 2010 à 18:35
16 mars 2010 à 18:35
Bonne soirée failp,
Votre description est claire.
Dans mes archives, j'ai trouvé ce qui suit. Ce n'est pas ce
que vous souhaitez, mais en l'adaptant il doit être possible de faire avancer votre projet.....
NB : Je n'ai jamais utilisé cette solution.
**********
REM Importation massive de fichier Excel dans ACCESS
Function ImporteExcel()
Dim NomFich As String
NomFich = Dir("D:\TestXl\*.xls")
Do While NomFich <> ""
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "TableTempo", "D:\TestXl\" & NomFich, False, "A1:I300"
NomFich = Dir
Loop
End Function
*************
Alors, ça fonctionne, mais il faut au préalable que ta table devant recevoir les données d'Excel soit créée avec 7 champs dont le type (texte, date...) correspond à tes colonnes Excel, dans le même ordre que tes colonnes Excel,
Il convient de personnaliser le code ci-dessus ainsi :
- A la place de "D:\TestXl\" (dans la première instruction Dir, et dans la ligne DoCmd.Transfer...) , mettre le répertoire contenant les fichiers Excel,
- Vérifier la version de Excel, pour que la constante acSpreadsheetTypeExcel ? corresponde,
- Si les fichiers Excel contiennent en première ligne les en-têtes de colonne, indiquer True en avant dernier argument,
- En dernier argument, mettre la plage de cellules à importer de Excel vers Access. Si c'est variable (entre 800 et 1000, par ex.), mettre "A1:I1500". Les lignes vides ne seront pas importées.
Cordialement
Votre description est claire.
Dans mes archives, j'ai trouvé ce qui suit. Ce n'est pas ce
que vous souhaitez, mais en l'adaptant il doit être possible de faire avancer votre projet.....
NB : Je n'ai jamais utilisé cette solution.
**********
REM Importation massive de fichier Excel dans ACCESS
Function ImporteExcel()
Dim NomFich As String
NomFich = Dir("D:\TestXl\*.xls")
Do While NomFich <> ""
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "TableTempo", "D:\TestXl\" & NomFich, False, "A1:I300"
NomFich = Dir
Loop
End Function
*************
Alors, ça fonctionne, mais il faut au préalable que ta table devant recevoir les données d'Excel soit créée avec 7 champs dont le type (texte, date...) correspond à tes colonnes Excel, dans le même ordre que tes colonnes Excel,
Il convient de personnaliser le code ci-dessus ainsi :
- A la place de "D:\TestXl\" (dans la première instruction Dir, et dans la ligne DoCmd.Transfer...) , mettre le répertoire contenant les fichiers Excel,
- Vérifier la version de Excel, pour que la constante acSpreadsheetTypeExcel ? corresponde,
- Si les fichiers Excel contiennent en première ligne les en-têtes de colonne, indiquer True en avant dernier argument,
- En dernier argument, mettre la plage de cellules à importer de Excel vers Access. Si c'est variable (entre 800 et 1000, par ex.), mettre "A1:I1500". Les lignes vides ne seront pas importées.
Cordialement