problème bdd access vers excel

battole

XLDnaute Nouveau
Bonjour,

Je suis étudiant en master 1 d'histoire, et dans le cadre de mes recherches, j'ai crée des bdd sur access que je souhaiterai exporter vers excel. Je travaille sur la mortalité dans 7 paroisses de l'Orne, j'enregistre des actes de décès datant de 1660 à 1789. J'ai créé 5 champs: Année/Date/Nom/Age/Elts sup, qui me donneront la possibilité de faire des tableaux ac excel du style "Age au décès des habitants sur la période" . Le hic c'est que je me suis aperçu trop tard d'une erreur énorme et grossière: pour l'âge je n'ai crée qu'un seul champ et je me retrouve ac des "40 ans", des "3 jours", des "2 semaines" mélangés en vrac. Mon cas est-il désespéré ou quelqu'un connait-il une parade afin de convertir mes quelques 18000 données sur excel? Merci bcp par avance.

Baptiste
 
C

Compte Supprimé 979

Guest
Re : problème bdd access vers excel

Bonjour battole, bienvenue sur ce forum ;)

Avec Excel, tu peux importer des données d'une base Access très facilement.

Menu Données -> Données externes -> Importer des données
Dans la fenêtre "Source de données", tu va chercher ta BdD
Tu insères tes données à l'endroit que tu veux
Tu as ainsi les données de ta table directement dans Excel

Sinon tu peux utiliser également une requête
Menu Données -> Données externes -> Créer une requête
Dans la Fenêtre MS Query, tu sélectionnes "MS Access Database", puis OK
Ensuite dans la nouvelle fenêtre tu va chercher ta BdD
Tu ajoutes ensuite la table qui t'intéresse, puis OK
Tu mets les champs qui t'intéressent ou tous "*"
Tu mets les critères qui t'intéressent

Ensuite tu supprimes ta liaison en supprimant le nom qui a été créé
Menu -> Insertion -> Nom -> Définir

Voili, voilà ;)
 

battole

XLDnaute Nouveau
Re : problème bdd access vers excel

champsecret décès
N° Année Date Nom Age Elts Sup
1780 26/10 Anne Lebouc 43 ans
1780 01/11 Marie Gosnet 20 ans
1780 02/11 Louis Jardin 78 ans
1780 10/11 Philippe Masseron 57 ans
1780 29/11 Angélique Lafontaine 2 mois
1780 01/12 Marie Dubois 60 ans
1780 06/12 Jacques Lafontaine 3 ans
1780 10/12 Christophe Mary 9 ans
1780 12/12 Renée Peron 65 ans
1780 13/12 Charlotte Olivier 8 ans
1780 14/12 Catherine Lecomt 3 ans
1780 25/12 Marie Jardin 60 ans
1780 26/12 François Leconte 18 mois
1780 26/12 Pierre 3 semaines
1780 27/12 François Chenel 80 ans
1780 30/12 Julien Gosnel 1 jour
1781 07/01 Thomas Corbiere 7 jours
1781 15/01 René Letourneur 54 ans

Voilà en gros à quoi ressemblent mes données accumulées sur Access. Ce que je voudrais faire maintenant, avec mes 18000 actes, ce sont des graphiques sur les courbes de la mortalité dans des périodes bien définies, par exemple " répartition des âges au décès dans les 7 paroisses 1690-1709" ou "calendrier mensuel des décès des moins de 20 ans 1780-1789"... Mais comment faire dès lors que mes données concernant l'âge sont en années, mois, semaines ou jour? Il aurait fallu avoir le même indice afin de faciliter les calculs sur Excel mais cela prendrait trop de temps pour tout refaire. Merci
 

chris

XLDnaute Barbatruc
Re : problème bdd access vers excel

Bonjour

Si je comprends bien le champ age est de type texte avec 43 ans ou 5 semaines par exemple.

Dans une requête sélection tu peux faire des conversions mais la formule va être un peu longue.

Pour simplifier j'ajouterais 2 champs à la table : Age_quantité(numérique) et Age_unité(texte)

Puis j'éclaterais l'age dans ces deux champs avec une ou plusieurs requêtes de mise à jour (c'est plus simple si tu ne maîtrises pas de faire une requête MAJ par type d'unité)
  • Utiliser DansChaîne pour trouver l'espace qui sépare le nombre des unités
  • Utiliser GAUCHE et MID pour récupérer les 2 parties
  • Utiliser Cnum pour convertir la partie gauche en numérique.
    exemple CNUM(GAUCHE(Danschaîne([age];" ")-1))
Une fois cela fait tu peux faire tes requêtes de sélection simplement en te basant sur ces 2 nouveaux champs (tu peux d'ailleurs virer le champ age).

Attention au champ unité qui contiendra peut-être des singuliers et des pluriels. Utiliser l'astérix dans les requêtes : exemple an* qui donne comme (an*)
 
Dernière édition:

Statistiques des forums

Discussions
312 339
Messages
2 087 414
Membres
103 542
dernier inscrit
feenix