|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Futur Membre du Club
![]() Thomas M Inscription : février 2011 Messages : 38 ![]() |
Bonjour,
Je dispose d'un fichier Excel un peu particulier à importer de façon automatique dans une table, j'ai donc pour cela réalisé une fonction VBA. Je ne peux pas (et ne veut pas) importer le fichier via l'import d'access, car j'effectue quelques tests pour importer les bonnes lignes, et le format du fichier ne permet pas de toute manière une importation via "Fichier -> Importer". Le coeur de ma fonction ressemble grosso modo à ça : Code :
Pour cela, je pense qu'il serait beaucoup plus efficient d'importer tous les enregistrements d'un seul coup, plutot qu'un à un ... Quel est selon vous le meilleur moyen de les stocker (4 champs) avant de les importer en une fois ... Est il possible de les ajouter dans un recordset que l'on déverse ensuite dans une table ? Merci d'avance pour votre aide, Thomas |
||
|
|
00
|
|
|
#2 |
|
Membre du Club
![]() Inscription : mai 2010 Messages : 36 ![]() |
Bonjour
Proposition : - étape 1 : importer la feuille excel dans une table temporaire (avec un modèle d'import si nécessaire) ; ceci peut être aisément automatisé. - étape 2 : effectuer les différents tests en détruisant les enregistrements dans la table. - étape 3 : ajouter les enregistrements "corrigés" dans la table définitive. Avec un peu de code et quelques requêtes SQL, ceci devrait vous satisfaire car c'est rapide, facilement maîtrisable. Nourson |
|
|
00
|
|
|
#3 |
![]() ![]() ![]() |
oui...
ou bien même faire des règles de validation sur les champs de la table pour éliminer les enregistrements directement à l'import, puis copier les données de la table ainsi mise à jour dans la table de destination. Avec une architecture frontal-dorsal traditionnelle (frontale sur le client bien sûr...) et une table locale pour éviter les transferts réseau, ca pourrait avoir un résultat étonnant en terme de performances :p
__________________
1formaxion, une formation de qualité, des formateurs compétents Mes tutoriels et vidéos : Tableaux croisés dynamiques, Access les Bases, et les autres ! |
|
00
|
|
|
#4 |
|
Futur Membre du Club
![]() Thomas M Inscription : février 2011 Messages : 38 ![]() |
Bonjour,
Merci tout d'abord pour vos suggestions. Le problème vient du fait que chaque ligne Excel correspond à trois enregistrements. En fait, j'ai pour chaque ligne 3 valeurs pour 3 mois, alors que dans ma base, je veux un enregistrement pour chaque mois. Je ne pense pas que cela soit possible de l'importer automatiquement via la fonction d'import de feuille Excel d'Access qui n'est pas très bien paramètrable. Je vais essayer de me pencher sur la question quand même. Sinon pour l'architecture frontale dorsale, c'est la solution la plus adaptée à mon cas je crois en tout cas, merci! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com