Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel
Excel Forum d'entraide sur Excel. Vos questions sur les fonctions, formules, manipulations, et tout sujet qui ne trouve pas sa place dans un sous-forum.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/06/2011, 23h12   #1
Invité de passage
 
Homme
Inscription : juin 2011
Messages : 22
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : juin 2011
Messages : 22
Points : 4
Points : 4
Par défaut Importation de données Excel vers Access

Bonjour,

Je viens ici pour chercher une piste concernant un petit quelque chose que je souhaite faire.
Cela concerne beaucoup de trucs à la fois, Excel, Access et VB, alors je ne savais pas trop ou le poster.

J'ai plusieurs fichiers excels qui donnent chacun des informations sur un objet particulier (mettons un étudiant).
J'ai une base de données avec plusieurs tables concernant cet étudiant (mettons ses info perso pour l'une, ses notes de chaque matière pour l'autre).
Je cherche à avoir un truc qui importe tout seul les infos de chaque fichier excel vers access.

Savez-vous comment je peux procéder ?

Je vous remercie.
xaltar92 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2011, 04h12   #2
Rédacteur/Modérateur
 
Avatar de Philippe JOCHMANS
 
Homme Philippe JOCHMANS
Développeur informatique
Inscription : mai 2005
Messages : 17 616
Détails du profil
Informations personnelles :
Nom : Homme Philippe JOCHMANS
Âge : 44
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Communication - Médias

Informations forums :
Inscription : mai 2005
Messages : 17 616
Points : 30 961
Points : 30 961
Envoyer un message via MSN à Philippe JOCHMANS Envoyer un message via Skype™ à Philippe JOCHMANS
Bonjour

Question récurrente, à la fois simple et vague.

Le passage d'Excel à Access peut se faire de différentes manières, mais pour cela il faut donner plus de détails :

Veux-tu partir d'Access ou d'Excel ?
Est-ce que toutes les données doivent être importées ou une certaines quantité ?
As-tu pensé aux fichiers Excel liés dans ta base Access et l'utilisation de requêtes d'ajout ?

Pourquoi toutes ces questions (et il en manque) ?

Il est important de comprendre que lorsque l'on pose une question sur un forum il faut détailler ce que l'on souhaite, sinon on part dans des interminables discussions et celles-ci deviennent confuses et inutiles.



Philippe
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
Si vous pensez commencer sans un livre, oublier : livres pour débuter
Vous pouvez consulter mes articles sur Access et PowerPoint
Le blog Office.

Inutile de m'envoyer un MP pour des questions techniques ou de me relancer , je n'y répondrais pas.
Philippe JOCHMANS est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2011, 08h39   #3
Expert Confirmé
 
Homme Philippe
ex Observeur CGG / Analyste prog.
Inscription : juin 2006
Messages : 1 699
Détails du profil
Informations personnelles :
Nom : Homme Philippe
Localisation : France, Finistère (Bretagne)

Informations professionnelles :
Activité : ex Observeur CGG / Analyste prog.

Informations forums :
Inscription : juin 2006
Messages : 1 699
Points : 3 615
Points : 3 615
Salut,effectivement cela demanderait qqs eclaircissements, sinon commencer par http://access.developpez.com/faq/?pa...l#ImpFichExcel ? et les FAQ attenantes
__________________
Pensez à Voter, d'avance merci. ( Pouces en bas à la droite de Citer )
Balisez votre code après l'avoir indenté sous Excel via Smart Indenter
Autre utilitaire : MZ Tools 3.0 VBA

Contribution : Excel / Word / PDF avec Adobe Acrobat Pro / PDFCreator 1 2
kiki29 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2011, 13h17   #4
Invité de passage
 
Homme
Inscription : juin 2011
Messages : 22
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : juin 2011
Messages : 22
Points : 4
Points : 4
Mh, je vois. Merci pour le lien déjà

Alors, comment mieux expliquer ça ?

Déjà, je veux passer de Excel à Access.

J'explique la démarche sur un exemple :

J'ai un fichier Excel type contenant plein de champs de données à remplir concernant un étudiant mettons (une partie contient les info perso, une autre les notes).

J'envoie ce fichier type à tous les étudiants d'une classe.

Plusieurs personnes vont me renvoyer ces fichiers remplis, au fur et à mesure du temps. J'en aurai donc souvent 5 en même temps voire plus.

Je veux maintenant que pour chaque fichier, une ligne dans access soit créée contenant les info du fichier excel. Mais sans toucher au fichier excel, puisque sinon il faudrait le faire à chaque fois.

Une table dans access est dédiée à chaque "groupe" de réponses : une table info perso, une table notes ... et les champs correspondants doivent être remplis en fonction des champs excel.

Je vous le met en algorithme informel :-D

Pour tous les fichiers excel
Ouvrir le fichier excel
Pour toutes les tables base de données Access ("info perso","notes",...)
Pour tous les champs de la table courante Access
Lire l'information dans le champ correspondant du fichier excel
Passer au champ suivant
Passer à la table suivante
Fermer le fichier excel
Passer au prochain fichier excel

Voila, et donc ben je ne sais qu'utiliser, une appli complète en VB ou je sélectionne toutes les feuilles excel d'un coup et elles sont traitées ? Un script interne à Access ? Je vous avoue que la je suis perdu.

Est-ce que c'est plus clair ?
xaltar92 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2011, 14h26   #5
Membre éprouvé
 
Avatar de Runsh63
 
Homme Duc
Nihiliste
Inscription : mars 2011
Messages : 395
Détails du profil
Informations personnelles :
Nom : Homme Duc
Âge : 31
Localisation : France, Puy de Dôme (Auvergne)

Informations professionnelles :
Activité : Nihiliste
Secteur : Industrie

Informations forums :
Inscription : mars 2011
Messages : 395
Points : 419
Points : 419
Bonjour,

Perso, au vue de ce que tu expliques voilà comment je procéderai :

- Tous tes fichiers Excel ont la même structure, je ferai donc un simple bouton d'import depuis ma base Access avec un OpenDialog pour aller sélectionner l'emplacement et le fichier à importer dans une table tampon, disons "T01_Import data".

- Création de requête(s) suppression (pour supprimer les infos inutiles) puis d'une requête ajout dans une "T02_Master table" dans laquelle tu auras la totalité de tes infos avec tous tes champs.

- De là, création de x requêtes ajout dans x tables => infos administratives, notes, etc...

- N'oublie pas de créer pour chaque étape des requêtes qui te serviront de verrous, qui par exemple t'assurent que tu n'as pas perdu d'infos en route.

En conclusion, tout est gérable directement depuis Access, et de plus sans obligation de devoir passer par une tartine de code (d'après ce que tu décris, uniquement pour l'import des fichiers Excel dans la BDD).
__________________
Cordialement,

Runsh
Runsh63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2011, 15h29   #6
Invité de passage
 
Homme
Inscription : juin 2011
Messages : 22
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : juin 2011
Messages : 22
Points : 4
Points : 4
Okay je vois ce que tu veux dire. Alors donc dans son principe je comprends comment tu vois la solution.

Par contre en pratique, je ne sais pas du tout comment on fait par exemple un "OpenDialog" ... en fait je sais un peu faire de VB. Mais le lien entre Access et le VB je vois pas du tout ...

Et comment je sais quelles cases ont les bonnes infos ? Sur excel ma colonne B contient les noms des infos, et la colonne C les infos en question ...

La structure est presque la même, certaines lignes sont présentes dans certains fichiers et parfois non si l'élève prend une matière non obligatoire par exemple).

Au début j'avoue que je pensais faire ceci :

Rechercher dans le tableau excel chaque nom de ligne de la colonne B (qui correspond à l'en-tête de la table Access et mettre le contenu de la ligne C dans la case valeur correspondante.
Et ce pour toutes les lignes du fichier excel.
Si la ligne de la colonne B contient "XXXX" alors mettre son contenu dans la case du tableau tampon.

Alors ... hum qu'en penses-tu ? Parce que avec ta méthode je comprends pas comment tu sais dans quelle case du tableau mettre quelle donnée ?

Et heu ... petit détail ... j'ai besoin que Toutes les feuilles excel soient traitées à la chaine, si j'en ai 10 qui arrivent en même temps ça va. Pour une école de 100 voire un lycée de 1000 personnes c'est plus costaud ... c'est possible ca ?
xaltar92 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h24.


 
 
 
 
Partenaires

Hébergement Web