Commencer à apprendre le VBA dans Excel Part 2.1 – Résumé

Apprendre le VBA débutant
Apprendre le VBA débutant

L’aventure généalogique de Pierre avec VBA

Pierre, le frère de Marie, décide d’utiliser VBA dans Excel pour continuer le travail sur l’arbre généalogique de la famille Durand. Suivons ses premiers pas.

Commentaires : Les notes de famille

Pierre apprend à documenter son travail avec des commentaires.

Une ligne

Pour une note rapide sur un ancêtre :

' Jean Durand, né en 1920

Multiligne

Pour des histoires familiales plus détaillées :

' Pierre Durand, né en 1950
' Passionné de jardinage
' A transmis son amour de la nature à ses enfants

Variables : Le carnet d’adresses familial

Pierre découvre comment stocker les informations de sa famille.

Base

Pour enregistrer le nom de famille :

Dim nomFamille As String
nomFamille = "Durand"

Plusieurs variables en une ligne

Pour noter rapidement les informations d’un membre :

Dim prenom As String, nom As String, anneeNaissance As Integer
prenom = "Pierre": nom = "Durand": anneeNaissance = 1978

Types

Pierre apprend à utiliser différents types de données pour organiser ses informations :

Dim age As Integer
Dim ville As String
Dim enfants As Variant
Dim infosMarie As Object

age = 45
ville = "Paris"
enfants = Array("Luc", "Sophie")
Set infosMarie = CreateObject("Scripting.Dictionary")
With infosMarie
    .Add "Nom", "Durand"
    .Add "Prenom", "Marie"
    .Add "AnneeNaissance", 1980
End With

Affichage des variables

Pierre apprend à afficher le contenu de ses variables :

Debug.Print "Nom de famille : " & nomFamille
Debug.Print "Enfants : " & Join(enfants, ", ")
Debug.Print "Infos de Marie : " & infosMarie("Prenom") & " " & infosMarie("Nom")

Opérateurs : Analyser l’arbre familial

Pierre utilise des opérateurs pour manipuler ses données familiales.

Affichage des résultats

Pierre combine différents opérateurs pour afficher ses analyses :

Debug.Print prenom & " " & nom & " est un membre de la famille Durand : " & _
             (nom = "Durand") & ". Né(e) en " & anneeNaissance & _
             ", son âge est de " & (Year(Date) - anneeNaissance) & " ans."

Fonctions : Automatiser les tâches généalogiques

Pierre crée des fonctions pour simplifier ses recherches.

Créer et appeler une fonction

Pour calculer l’âge à partir de l’année de naissance :

Function CalculerAge(anneeNaissance As Integer) As Integer
    CalculerAge = Year(Date) - anneeNaissance
End Function

Dim agePierre As Integer
agePierre = CalculerAge(1978)
Debug.Print "Age de Pierre : " & agePierre

Tableaux & Dictionnaires : Organiser l’arbre généalogique

Pierre utilise des structures de données pour mieux organiser ses informations.

Manipulation tableau et dictionnaire

Dim cousins(2) As String
cousins(0) = "Alex"
cousins(1) = "Emma"
cousins(2) = "Tom"

cousins(1) = "Émilie" ' Modifier une valeur

Dim infosPierre As Object
Set infosPierre = CreateObject("Scripting.Dictionary")
With infosPierre
    .Add "Nom", "Durand"
    .Add "Prenom", "Pierre"

    .Item("Ville") = "Lyon" ' Ajouter/Modifier une valeur
    .Remove "Prenom" ' Supprimer une valeur
End With

Structure conditionnelle : Analyser les relations familiales

Pierre utilise des conditions pour classer les membres de sa famille.

If…Else…End If

Dim statut As String
If anneeNaissance < 1950 Then
    statut = "Ancêtre"
Else
    statut = "Génération récente"
End If

Select Case

Dim generation As String
Select Case anneeNaissance
    Case Is < 1950
        generation = "Anciens"
    Case 1950 To 1979
        generation = "Parents"
    Case Else
        generation = "Jeunes"
End Select

Boucles : Parcourir l’arbre généalogique

Apprendre le VBA débutant

Pierre apprend à parcourir efficacement ses données familiales.

For…Next

Dim i As Integer, enfantsNumerotes As String
For i = LBound(enfants) To UBound(enfants)
    enfantsNumerotes = enfantsNumerotes & "Enfant " & (i + 1) & ": " & enfants(i) & vbNewLine
Next i

For Each…Next

Dim membre As Variant, infoMembre As String
For Each membre In infosMarie.Keys
    infoMembre = infoMembre & membre & ": " & infosMarie(membre) & vbNewLine
Next membre

Do While…Loop

Dim anneeActuelle As Integer, generations As Integer
anneeActuelle = 2023
generations = 0
Do While anneeActuelle > 1850
    generations = generations + 1
    anneeActuelle = anneeActuelle - 25
Loop

Conclusion

Pierre a découvert les bases de VBA dans Excel pour gérer l’arbre généalogique de la famille Durand. Il peut maintenant stocker, manipuler et analyser les informations familiales de manière simple et efficace, en complément du travail de sa sœur Marie, tout en profitant des fonctionnalités d’Excel pour visualiser et organiser les données.

Il peut maintenant stocker, manipuler et analyser les informations familiales de manière simple et efficace, en complément du travail de sa sœur Marie. Si vous souhaitez aller plus loin pour apprendre le VBA c’est ICI.

Comments

No comments yet. Why don’t you start the discussion?

    Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *