« Macros-commandes VBA/Création de Fonction » : différence entre les versions

Contenu supprimé Contenu ajouté
m Révocation des modifications de 41.140.242.218 (discussion) vers la dernière version de 196.70.253.168
Balise : Révocation
Ligne 30 :
'''FONCTION :'''
 
<sourcesyntaxhighlight lang="vb">
Function carre(nombre)
carre = nombre ^ 2 'La fonction "carre" renvoie la valeur de "carre"
End Function
</syntaxhighlight>
</source>
 
'''PROCEDURE :'''
 
<sourcesyntaxhighlight lang="vb">
Sub macro_test()
Dim resultat As Double
Ligne 44 :
MsgBox resultat 'Affiche le résultat (ici, le carré de 9.876)
End Sub
</syntaxhighlight>
</source>
}}
 
Ligne 65 :
Alors que sous VBA, il est possible de déclarer la fonction (plus lisible et plus facile à corriger en cas d'erreur) :
 
<sourcesyntaxhighlight lang="vb">
Function calculPrime(montant as Double) as Double
If montant>1000 then
Ligne 75 :
End If
End Function
</syntaxhighlight>
</source>
 
Dans ce cas, il suffit d'introduire dans une case Excel : '''=calculPrime(B5)''' pour obtenir le même résultat qu'avec une fonction SI imbriquée.
Ligne 108 :
'''Exemple''' :
 
<sourcesyntaxhighlight lang="vb">
Function diviser_par_1000(Cellule_a_diviser As Double)
diviser_par_1000 = Cellule_a_diviser / 1000
End Function
</syntaxhighlight>
</source>
 
{{Conseil|contenu=
Ligne 127 :
* Ensuite, il faut lui transmettre les paramètres :
 
<sourcesyntaxhighlight lang="vb">
Sub AppelFonction()
Dim variable1 As Byte, variable2 As Byte
Ligne 135 :
MsgBox resultat
End Sub
</syntaxhighlight>
</source>
 
* il est aussi conseillé de décrire ce que fait la fonction
 
<sourcesyntaxhighlight lang="vb">
' déclarer les variables
Dim variable1 As Byte, variable2 As Byte
Ligne 149 :
MsgBox resultat
End Sub
</syntaxhighlight>
</source>
 
* Enfin, fermer la fenêtre appuyer sur la touche F5 pour lancer la macro.
Ligne 204 :
Le nom de la fonction jouant le rôle d'une variable locale à la fonction, il est possible de l’utiliser tout au long de la procédure ce qui permet d'économiser la création d'une variable temporaire supplémentaire .
 
<sourcesyntaxhighlight lang="vb">
Function MAFONCTION(Param1,... ParamN) As Double
MAFONCTION = Param1 + Param2 /5
Ligne 210 :
MAFONCTION = MAFONCTION ^ 2
End Function
</syntaxhighlight>
</source>
 
Pour faciliter la création de fonction, le nom doit respecter des conventions standards d'affectation, comme :
Ligne 255 :
La syntaxe est la suivante :
 
<sourcesyntaxhighlight lang="vb">
Function nom_fonction(paramètre1, paramètre2,,....) AS type
instruction1
Ligne 261 :
nom_fonction=valeur_retour
End Function
</syntaxhighlight>
</source>
 
Un nombre quelconque d'assignations de ce type peut apparaître n’importe où dans la procédure. Si aucune valeur n'est attribuée à l'argument nom_fonction, la procédure renvoie une valeur par défaut :
Ligne 327 :
Grâce aux fonctions personnalisées, il est possible de créer une fonction permettant de calculer plus facilement le montant des intérêts à verser en fonction du montant du Capital, du taux d'intérêt et de la durée de l'emprunt.
 
<sourcesyntaxhighlight lang="vb">
Function CalculerInteret (ByVal Capital As Long, ByVal Taux As Double, ByVal Duree As Integer) As Currency
CalculerInteret = Format ( Capital * Taux / 100 * Duree), "Currency")
End Function
</syntaxhighlight>
</source>
 
Le mot clé ''Function'' indique le début de la fonction qui a pour nom CalculerInteret, le mot clé ''End Function'' indique la fin de la fonction
Ligne 354 :
Cette fonction est une fonction personnalisée qui permet de calculer le montant Hors Taxe en fonction du montant TTC et du taux de TVA
 
<sourcesyntaxhighlight lang="vb">
Function HT(Montant, TauxTva)
HT= (Montant / (100 + TauxTva) * 100)
End Function
</syntaxhighlight>
</source>
 
La Fonction se nomme HT et dépend de deux informations, le montant et le taux de TVA. Pour calculer le montant HT, la fonction va diviser le montant par le taux de TVA auquel on aura ajouté 100, puis va diviser le résultat par 100. Par exemple pour un montant de 12 000 € et un taux de TVA à 20 %, le calcul de montant Hors taxe se ferait par la formule : = (12000/(100+20)*100). En utilisant la fonction HT, l'utilisateur pourra calculer le montant HT plus facilement et plus rapidement, surtout si les taux de TVA diffèrent d'un produit à l'autre.
Ligne 370 :
Cette fonction permettra de calculer le montant TTC en fonction du montant Hors taxe et du taux de TVA
 
<sourcesyntaxhighlight lang="vb">
Function TTC(HorsTaxe, TauxTva)
TTC = (HorsTaxe + (HorsTaxe * TauxTva) / 100)
End Function
</syntaxhighlight>
</source>
 
La Fonction se nomme TTC et dépend de deux informations, le montant HT et le taux de TVA. Pour calculer le montant TTC, la fonction va multiplier le montant HT par le taux de TVA puis va ajouter 100 au résultat obtenu, et enfin va diviser le résultat par 100. Par exemple pour un montant HT de 1 000 € et un taux de TVA à 19,6 %, le calcul de montant TTC se ferait par la formule : = (1000+(1000*19,6)/100). En utilisant la fonction TTC, l'utilisateur pourra calculer le montant TTC plus facilement et plus rapidement.
Ligne 386 :
Cette fonction permettra de calculer la rentabilité globale d'une opération
 
<sourcesyntaxhighlight lang="vb">
Function RentabilitéGlobale(Résultat_net, Valeur_Ajoutée)
RentabilitéGlobale = Résultat_net / Valeur_Ajoutée
End Function
</syntaxhighlight>
</source>
 
La fonction a pour nom RentabilitéGlobale. Elle dépend de deux informations, le Résultat Net et la Valeur Ajoutée. La fonction va donc calculer la rentabilité en divisant le montant du Résultat Net par le montant de la Valeur Ajoutée. Par exemple, pour un Résultat net de 20 000 € et une Valeur ajoutée de 10 000, la fonction RentabilitéGlobale trouve une rentabilité de 2. Cela facilitera donc le travail de tous les comptables et autres gestionnaires.