Comment programmer avec MS Excel (VBA)
Microsoft Excel est un tableur puissant. Beaucoup passent à côté de son vrai potentiel en n'exploitant pas toutes ses capacités. Visual Basic pour Applications (VBA) est une plateforme de développement incluse dans chaque application Microsoft Office. Le Visual Basic reprend le langage Basic. Avec VBA, un simple tableur devient une application dynamique exécutant automatiquement fonctions et procédures. Ici, nous ajoutons un code simple à un classeur Excel 2007 pour le faire « parler ». Projet idéal pour découvrir l'environnement VBA. Des notions de programmation sont nécessaires.
Étape 1 : Ouvrir un classeur
Utilisez un classeur existant ou créez celui montré ici. Si existant, assurez-vous qu'il a une colonne de totaux.
Étape 2 : Afficher l'onglet Développeur
L'onglet « Développeur » n'est pas visible par défaut. Cliquez le bouton « Microsoft Office » (en haut à gauche) → « Options Excel ». Onglet « Populaire » → cochez « Afficher l'onglet Développeur dans le ruban » → « OK ». Cliquez ensuite sur l'onglet « Développeur ».
Étape 3 : Ouvrir l'éditeur Visual Basic
Cliquez « Visual Basic ». L'éditeur s'ouvre. À droite, double-cliquez « Feuil1 » (celle sur laquelle nous travaillons). Une nouvelle feuille blanche apparaît à droite.
Étape 4 : Déclarer Option Explicit
Tapez « Option Explicit » en haut. Faites-le pour chaque programme VBA. Cela force à nommer les variables avant d'y assigner des données. Pensez aux variables comme de petits conteneurs pour informations changeantes. Ex. : totaux de janvier — ce montant change, associez-le à une variable pour l'appeler plus tard sans connaître sa valeur exacte.
Étape 5 : Créer la fonction TalkIt
Tapez :
Function TalkIt(txtTotal)
Application.Speech.Speak(txtTotal)
TalkIt = txtTotal
End Function
Cette fonction contrôle la synthèse vocale d'Excel. Première ligne : déclare la fonction (« Function »), la nomme (« TalkIt »), définit le paramètre (« txtTotal »). Maintenant, il faut l'appeler et lui passer les données.
Étape 6 : Ajouter un bouton sur la feuille
Retour au classeur. Onglet « Développeur » → « Insérer » → premier icône (bouton). Dessinez le bouton où vous voulez. Nommez-le « cmd_Total » → « OK ». Changez le texte du bouton : clic droit → « Modifier le texte ». J'ai mis « Parler ».
Étape 7 : Code du bouton
Retour à l'éditeur VBA. Ajoutez :
Private Sub cmdTotal_Click()
Dim intTotal As Integer
Dim txtTotal As String
intTotal = WorksheetFunction.Sum(Cells.Range("B3", "B14"))
If intTotal < 2500 Then
txtTotal = "Objectif non atteint"
Else
txtTotal = "Objectif atteint"
End If
TalkIt(txtTotal)
End Sub
Quand on clique le bouton, le code somme la colonne « Chapeaux » (B3:B14). Si total < 2500, la voix dit « Objectif non atteint », sinon « Objectif atteint ». Vous venez de créer votre premier programme dans Excel !
Conseil
Apprenez d'autres fonctions/procédures VBA via cours ou livre. Plus vous expérimentez, plus vous serez à l'aise. Si ça ne marche pas, vérifiez les paramètres de sécurité dans Excel pour activer les macros : onglet « Développeur » → « Sécurité des macros ».
