Ouvrez l'éditeur de VBE (Visual Basic Editor) :
Vous allez créer dans le module DCG une fonction tva() qui va renvoyer la valeur 1.2
Dans VBE, saisissez le code suivant
Public Function tva() tva = 1.2 End Function
Pour renvoyez une valeur, il suffit d'utiliser le nom de la fonction et de lui affecter une valeur : tva = 1.2
Pour utiliser cette nouvelle fonction, écrivez dans la cellule A1 de votre feuille =tva() ou utilisez-la dans une formule de calcul.
Vos fonctions peuvent utiliser des paramètres. Ecrivez cette fonction politesse() et tester la.
Public Function politesse(nom as string) politesse = "Bonjour " + nom End Function
La fonction apparaît comme une fonction d'Excel et puisqu'il y a un paramètre, l'assistant vous propose de sélectionner la cellule de la feuille qui contient la valeur du paramètre à utiliser.
Voici les types de données que vous pouvez utiliser avec VBA :
Créez la procédure info() qui affiche une boite de dialogue en utilisant la fonction politesse précédente.
Sub info() Dim texte as String texte=politesse("Charles") MsgBox texte, vbInformation, "info" End Sub
Remarque : la fonction MsgBox est utilisée pour afficher le résultat de la fonction politesse().
Pour exécuter cette procédure vous pouvez :
Pour affecter la procédure à un bouton :
Par défaut les procédures sont publiques et vous pouvez le mentionner explicitement ce qui définit l’étendue de son utilisation :
Public Sub info() ... End Sub
Le mot-clé Private indique que la procédure ne peut être appelée que par les procédures de son module.
Private Sub info() ... End Sub
L'appel d'une procédure se fait avec l'instruction call.
Exemple de l'appel de la procédure info() par une autre procédure :
Sub TestAppelInfo() Call info End Sub
La procédure précédente était une procédure générale, déclarée dans un module et appelée explicitement dans le code.
Une procédure événementielle est associée à un événement d’un objet. Son nom est composé du nom de l’objet, suivi du caractère souligné “_” et du nom de l’événement (ex : Workbook_Open). L’appel d’une telle procédure est implicite, c’est-à-dire que la procédure est exécutée automatiquement lorsque l’événement associé se produit.