
Un fichier Excel est utilisé pour le Fichier Origine parce que c'est le format choisi par l'autre principal intéressé du Fichier Origine. Cette application est assez simple: on utilise le fichier Excel pour modifier les données, puis une sauvegarde est faite en texte tabulé et c'est ce dernier fichier qui est affiché dans Internet sans autre manipulation que l'effaçage des fiches retirées et erreurs annotées.
Ma base de données de mariages et migrants sera utilisée comme exemple. Cette base a débutée comme index à un index d'un certain nombre de livres sur les premiers migrants venus au Québec. Puis, j'ai complété ces données et j'ai ajouté les mariages anciens du Québec avec des relations entre chaque couple.
| Fichier | Groupe | Contenu |
|---|---|---|
| acadie.xls | Base de mariages à ajouter | Groupes de mariages à ajouter lors de versions futures |
| commandes.xls | Référence | Macro-commandes qui servent selon les circonstances |
| conversions.xls | Anciens numéros | Correspondance entre les numéros retirés et les numéros utilisés |
| desc_a_cuillerier.xls | Fichier généré | Regroupement par ancêtre des descendants |
| dits.xls | Référence | Fichier de surnoms (noms dits) pour |
| docum.xls | Référence | Documentation diverse |
| elle-a-c.xls, etc. | Futur | Données sur les femmes |
| errdates.xls | Fichier généré | Erreurs de dates. À partir de mes données, indique si un mariage d'un fils a lieu moins de 16 ans après celui de ses parents (moins de 12 ans si une fille), plus de 50 ans pour un enfant quelconque, ou si un mariage précédent (contrat de mariage annulé et veuvage) a lieu après le mariage de comparaison |
| errliens.xls | Fichier généré | Erreurs de liens. Indique qu'un enfant a 2 fiches avec des parents différents ou qu'un numéro de parents a disparu |
| femm2000.xls | Migrants | Liste de référence des migrantes |
| homm2000.xls | Migrants | Liste de référence des migrants |
| louisian.xls | Base de mariages à ajouter | Voir acadie.xls |
| lui-a-c.xls | Futur | Données sur les hommes |
| mar-a-c.xls | Base intégrée des mariages | Liste de mariages avec filiations, lettres A à C. Détails. |
| mar-d-h.xls | Base intégrée des mariages | Voir mar-a-c.xls |
| mar-i-n.xls | Base intégrée des mariages | Voir mar-a-c.xls |
| mar-o-z.xls | Base intégrée des mariages | Voir mar-a-c.xls |
| mar-trav.xls | Fichier de travail | Fichier avec les lignes à vérifier. Ce fichier est recopié sur mon ordinateur portatif. Pour des raisons de sécurité, ce fichier n'est jamais écrasé: l'ancienne copie est plutôt renommée. |
| notaires.xls | Référence | Liste des notaires avec indication du greffe et des années d'activité |
| numeros.xls | Fichier de travail | Liste des numéros libres. Quand j'ajoute un couple, je
déplace un numéro depuis ce fichier. De même
pour les hommes et les femmes. Ces numéros sont créés
avec la commande: Édition - Recopier - Série.
J'ai utilisé les numéros 1 à 80000 pour les couples, 80001 à 160000 pour les hommes et 160001 à 240000 pour les femmes. Il me semble toutefois préférable d'avoir un nombre fixe de chiffres pour chaque numéro. Ainsi, 10 000 à 99 999 pour les couples, 100 000 et plus pour les individus. Le fait d'avoir des séries de numéros différents pour les couples, les hommes et les femmes facilite la détection d'erreurs. |
| ouest.xls | Base de mariages à ajouter | Voir acadie.xls |
| patros.xls | Fichier généré | Liste de patronymes pour validations |
| prenoms.xls | Fichier généré | Liste de prénoms pour validations |
| tmp-a-c.xls | Fichier de travail | Utilisé dans deux cas: affiliation d'un grand nombre de données et passage des mariages vers un autre tri que par les hommes. |
| tmp-d-h.xls | Fichier de travail | Voir tmp-a-c.xls |
| tmp-i-n.xls | Fichier de travail | Voir tmp-a-c.xls |
| tmp-o-z.xls | Fichier de travail | Voir tmp-a-c.xls |
Dans une première étape, un bloc de nouvelles données est ajoutée à la base de données. Donc, j'ai par exemple tous les mariages avant 1700, puis j'ajoute ceux de 1701 à 1730, puis ceux de 1731 à 1750, ceux de 1751 à 1765, etc. Je dois trouver alors les couples en double, par exemple, ceux qui ont dans deux registres ou pour lesquels j'ai à la fois un mariage religieux et un contrat de mariage. L'opération sera similaire pour ajouter les naissances et décès si je décide de le faire. J'ai alors ces données:
Couples connus: numéro de couple, nom des deux personnes du couple
Couples à affilier: nom des parents de l'homme et de la femme,
conjoints précédents. Quand j'ai à peu près
éliminé les fiches en double, je numérote en glissant
les numéros depuis le fichier des numéros libres.
Je copie alors vers mes fichiers temporaires toutes les fiches et je
déplace les colonnes en vue de l'affiliation des hommes. Donc,
j'ai par exemple:
| 4 | Numéro de couple |
| 12 | Patronyme de l'homme |
| 13 | Prénom de l'homme |
| 14 | Patronyme de la femme |
| 15 | Prénom de la femme |
| 22 | Date de mariage |
Toutes les autres colonnes sont effacées. De plus, je change
la couleur de fond de ces cellules pour identifier visuellement ces couples
de référence. Il est à remarquer que ces colonnes
sont aussi celles des données des parents dans le fichier des mariages.
J'ajoute alors les fiches pour lesquelles je n'ai pas déjà
de filiation vers les parents de l'homme pour obtenir des fiches ayant
les colonnes suivantes:
| Colonne | Fiches des parents | Fiches à affilier |
|---|---|---|
| 1 | (rien) | Numéro de couple |
| 4 | Numéro de couple | (rien) |
| 10 | (rien) | Patronyme de l'homme |
| 11 | (rien) | Prénom de l'homme |
| 12 | Patronyme de l'homme | Patronyme du père |
| 13 | Prénom de l'homme | Prénom du père |
| 14 | Patronyme de la femme | Patronyme de la mère |
| 15 | Prénom de la femme | Prénom de la mère |
| 22 | Date de mariage | Date de mariage |
Je trie alors les fiches de façon à regrouper les familles.
Ici, j'ai plusieurs méthodes de travail. Tout d'abord, sachant
qu'il y a des variations d'orthographe et la présence de Marie Anne
quand c'est Anne dans d'autres, il me faut normaliser les noms sans perdre
mes données. Donc, je recopie les colonnes 12 à 15
plus loin et je normalise dans ces colonnes. Il faut aussi se rappeler
une particularité d'Excel: si on sélection une colonne, la
commande "remplacer tout" ne remplace que dans la colonne choisie (celle
en vidéo inverse). Donc, on marque la colonne des prénoms
des femmes et on remplace "Marie " par "", donc les "Marie" ne sont pas
modifiées alors que les "Marie Anne" deviennent "Anne". Pour
les patronymes, on peut utiliser des macro-commandes comme:
|
|
Avant | Après |
|---|---|---|
| =STXT(J5;1;CHERCHE("<";J5)-1) | DESROCHES<DEROCHE | DESROCHES |
| =STXT(J5;1;CHERCHE(" de ";J5)-1) | JARRET de BEAUREGARD | JARRET |
| =STXT(J5;CHERCHE(" dit ";J5)+5;999) | JARRET dit BEAUREGARD | BEAUREGARD |
On arrive alors à des lignes comme, après plusieurs itérations
pour garder par exemple le 1er surnom et le nom normalisé seulement.
Les itérations peuvent être répétées
pour par exemple garder successivement le nom patronymique et le surnom.
| Colonne | Fiches des parents | Fiches à affilier | Fiches affiliées | Fiche initiale | Fiche normalisée |
|---|---|---|---|---|---|
| 1 | (rien) | Numéro de couple | Numéro de couple | ||
| 4 | Numéro de couple | (rien) | (rien) | ||
| 10 | (rien) | Patronyme de l'homme | Patronyme de l'homme | JARRET de BEAUREGARD | JARRET de BEAUREGARD |
| 11 | (rien) | Prénom de l'homme | Prénom de l'homme | Jean Marc | Jean Marc |
| 22 | Date de mariage | Date de mariage | Date de mariage | ||
| 42 | Patronyme de l'homme | Patronyme du père | Patronyme du père | JARRET de BEAUREGARD | JARRET |
| 43 | Prénom de l'homme | Prénom du père | Prénom du père | Jean Baptiste | Jean |
| 44 | Patronyme de la femme | Patronyme de la mère | Patronyme de la mère | DESROCHES<DEROCHE | DESROCHES |
| 45 | Prénom de la femme | Prénom de la mère | Prénom de la mère | Marie Catherine | Catherine |
Pour garder le nom normalisé sans la formule, on marque les lignes du résultat, on les copie (menu édition - copie, mais pas édition - couper) et on les recopie au même endroit (sans déplacer la marque) avec: édition - collage spécial - coller valeurs.
Si on veut optimiser le temps de traitement, on peut en un premier temps
utiliser une macro comme =ET(a1=a2;b1=b2;c1=c2) qui permet
de trouver les lignes dont le nom des parents d'un enfant est identique
au nom des parents d'un couple.