Description du code de Généalogie

[P] [N] [T] [C] [F] [1]

Les différents modules:


Classe StringFileName

Code
La classe StringFileName gère un nom de fichier et permet de lire et de modifier ses composants :
Propriétés:

  • Path   (lecture, écriture):  lecteur et chemin d'accès
  • Name   (lecture, écriture):  nom sans extension
  • Ext   (lecture, écriture):  extension sans point (3 caractères).
  • FileName   (lecture, écriture):  composé de Name, "." et Ext. le chemin d'accès est ignoré en lecture.
  • FullName   (lecture, écriture):  composé de Path et FileName

Méthodes:


Voir aussi Exemple.

GetOpenFilename

[T]

<expression>.GetOpenFilename(Title,FileFilter,ButtonText)

S'applique à StringFileName. Exécute une boite de dialogue permettant à l'utilisateur de fournir un nom de fichier parmi ceux déjà existants.


Voir aussi GetSaveAsFilename, StringFileName.

GetSaveAsFilename

[T]

<expression>.GetSaveAsFilename(Title,FileFilter,ButtonText)

S'applique à StringFileName. Exécute une boite de dialogue permettant à l'utilisateur de fournir un nom de fichier nouveau ou parmi ceux déjà existants.


Voir aussi GetOpenFilename, StringFileName, Exemple.

ChangeExt

[T]

<expression>.ChangeExt(FullName,Ext)

S'applique à StringFileName. Stocke et retourne le nom de fichier formé à partir de FullName (facultatif) et de la nouvelle extension Ext (facultatif). Si FullName est non spécifié, <expression>.FullName est employé. Si Ext est non spécifié, le résultat est sans extension.

Voir aussi StringFileName, Exemple.

Exemple d'utilisation de StringFileName

[T]

Dim FileName As String
Dim FN As New StringFileName
FN.ChangeExt ActiveWorkbook.FullName, "GED"
FN.GetSaveAsFilename "Exporter le fichier GEDCOM.", "Fichiers GEDCOM (*.GED),*.*", "Créer"
FN.Path= _"C:\"
FileName = FN.FullName

Voir StringFileName.


Classe ShName

Code
La classe ShName représente un nom de code d'un cadre ou d'un lien et est employé par la classe
Arbre pour la gestion des noms des objets de l'arbre. Ce nom de code se décompose ainsi :
Propriétés:

Fonctions:

Méthodes


Voir aussi Arbre.

GetShape

[T]

Set Sh=_expression.GetShape(NomCadre, byDefault, Report)

S'applique à Modèle. Retourne la "shape" (cadre ou lien) de la feuille <expression> dont le nom est précisé.

hasShape

[T]

Find=<expression>.hasShape(NomCadre)

S'applique à Modèle. Retourne True si la "shape" spécifiée existe dans la feuille modèle <expression>.


Classe Modèle

Code
La classe Modèle représente une feuille
modèle d'arbre et sert d'interface (ou de médiateur) à la classe Arbre pour l'acquisition des données de cette feuille.
Propriétés:


Fonctions


Voir aussi Description des cellules particulières des modèles d'arbres, ShName, Arbre.


Classe Arbre

Code
La classe Arbre génère tous les types d'arbres par "shapes":
Propriétés:


Voir aussi Draw.


Module Draw

Code
Draw est employé par Arbre pour le création des cadres et des liens.
Fonctions pricinpales:


Voir aussi Code.


Module ArbreCouple

Code

Voir aussi Code.


Module Liens

Code
Liens est employé indirectement par les boutons
Créer un arbre de parenté, Aller au lien et surtout Créer les liens entre les familles et les individus.

Procédures

Exemple:

Public Sub Créer_les_liens_famille _individu()
'
' génère les liens entre les feuilles Famille et Individu
' en ajoutant dans la feuille Famille pour, chaque code individu présent,
' le numéro de la ligne de la feuille Individu correspondant à ce Code ;
' et en ajoutant dans la feuille Individu pour chaque individu:
' le numéro de la ligne dans la feuille Famille ou il est présent en tant qu'enfant,
' les numéro des lignes de feuille Famille ou il est présent en tant que parent.
'
TestSheetExist
Liens.Creer
End Sub


Voir aussi Créer les liens entre les familles et les individus, Code.


Module Boutons

Code
Contient de la droite vers la gauche, la procédure associée à chaque bouton de la barre Généalogie. Contient également les procédures associées au objets "shape" des arbres généalogiques.
Public Sub Test()
Public Sub Test2()
Public Sub TestArbre()
Public Sub TestCouple()
Public Sub Enregistrer_GENEA()
Public Sub Basculer_le_masquage_de_GENEA()
Public Sub Basculer_le_mode_développement()
Public Sub Aide()
Public Sub Créer_une_Feuille_des_Ascendants()
Public Sub Figer_une_Feuille_des_Ascendants()
Public Sub Créer_Un_Arbre()
Public Sub Créer_l_Arbre_par_individu()
Public Sub Créer_l_Arbre_d_Ascendance()
Public Sub Créer_l_Arbre_Familial()
Public Sub Créer_l_Arbre_de_Parenté()
Public Sub Cadre_Click()
' sub lancée lorsque l'utilisateur click sur un objet shape (cadre)
Public Sub Réactiver_le_développement_de_l_Arbre()
Public Sub Désactiver_le_développement_de_l_Arbre()
Public Sub Repositionner_les_cadres_de_l_Arbre()
Public Sub Supprimer_l_Arbre()
Public Sub Créer_les_liens_famille _individu()
Public Sub Insérer_une_colonne_Enfant()
Public Sub Générer_partiellement_le_fichier_GedCom()
Public Sub Générer_le_fichier_GedCom()
Public Sub Lire_le_fichier_GedCom()
Public Sub Reset()
Public Sub PleinEcran()
Public Sub DeFiltre()
Public Sub Basculer_le_Style_Masqué()
Public Sub GotoSrc()


Module Ascendance

Code
macro et fonctions liées à la commande
Arbre d'ascendance Excel. les fonctions sont uniquement utilisée par la feuille de calcul tirée du modèle Boutons.AscFileName par CreateAscendentalTree.
Procédure

Public Sub CreateAscendentalTree(WBDst As Workbook, WSTitle As String, Code As String)

Fonctions


Voir aussi Code.


Module Debugage

Code
Debugage contient diverses procédures de visualisation des objets d'Excel. Ces procédures sont bien sur inutilisées dans la version finale :

Procédures

  • TestGetShape(Name)
  • TestCoupleDraw(Row)
  • ShapeList détaille un par un chaque objet Shape de la feuille courante est affiche son type,
  • TestSelection donne la formule de la sélection.
  • ShapeList détaille un par un chaque objet Shape de la feuille courante est affiche son type, son "sous type", son nom, et sa procédure associée.

Fonctions

  • StrControlType:  retourne le nom du type d'un contrôle (shape) en paramètre (employé par ShapeList)
  • StrShapeType:  retourne le nom du type d'une forme (shape mso) en paramètre (employé par ShapeList)
  • ShowButton affiche les paramètres d'un Bouton. Retourne True si la boîte est validée (bouton "ok"). _LigneCode Public Function ShowButton(Button As CommandBarButton) As Boolean


Voir aussi Code.


Module Librairie

Code
Librairie est en grande partie obsolète. Les seules parties réellement utilisées sont les procédures Msg, MessageErreur, TestSheetExist et les fonctions Choix_Du_DeCujus et EstCodeValide.
Function Choix_Du_DeCujus(Optional Entête As String = "") As Integer
' 0 si cancel, le numéro de ligne de l'individu choisi sinon
  ChoixIndividu.Entête = Entête
  ChoixIndividu.Show
  Choix_Du_DeCujus = ChoixIndividu.Row
End Function
Public Function EstCodeValide(ByRef Code As String) As Boolean
  EstCodeValide = (InStr(1, "?XXY... ", Code, 0) = 0)
End Function


Voir aussi Code.


Module ReadGedCom

Code
ReadGedCom est employé indirectement par le bouton
Lire le fichier GEDCOM.

Méthode


Voir aussi GEDCOM, Code.


Module WriteGedCom

Code
WriteGedCom est employé indirectement par les boutons
Générer le fichier GEDCOM et
Enregistrement partiel.

Méthode:

La commande Enregistrement partiel n'est pas encore implémentée.

Voir aussi GEDCOM, Code.


Classe ChoixIndividu

Code
ChoixIndividu est la boite de dialogue associé au choix d'un individu (le
de cujus), employé pour la création d'un arbre.
Propriétés:

Méthode:

Fonctions:

Exemple:

Function Choix_Du_DeCujus(Optional Entête As String = "") As Integer
' 0 si cancel, le numéro de ligne de l'individu choisi sinon
  ChoixIndividu.Entête = Entête
  ChoixIndividu.Show
  Choix_Du_DeCujus = ChoixIndividu.Row
End Function


Voir aussi Code.


Classe ChoixArbre

Code
ChoixArbre est la boite de dialogue associé au choix des paramètres de création d'un arbre : le modèle de l'arbre et l'individu (le
de cujus).
Propriétés:

Méthode:

Fonction:

Exemple:

With ChoixArbre
  .Show
  If.EstValidé Then
   DeCujus_.Row =.Row
   Set Modèle_ =.Modèle
   ...
  End If
End With


Voir aussi Code, Librairie.