Fonction ARRONDI.SUP dans Excel et VBA
Apprendre à utiliser la fonction « ARRONDI.SUP » d'Excel depuis son langage de programmation intégré VBA (Visual Basic for Applications) permet d'exécuter n'importe quelle fonction Excel depuis VBA. Cette compétence est utile car Excel possède de nombreuses fonctions absentes de VBA, que vous pourriez avoir besoin d'appeler depuis un programme VBA. Notez que la fonctionnalité VBA qui permet d'accéder à « ARRONDI.SUP » ne vous alertera pas en cas de syntaxe ou d'argument incorrect, contrairement à l'interface de feuille de calcul standard.
But
La fonction Excel « ARRONDI.SUP » arrondit un nombre vers le haut au nombre de chiffres spécifié. Par exemple, « ARRONDI.SUP(2,2 ; 0) » demande à Excel d'arrondir 2,2 à l'entier supérieur. Le « 0 » au second argument signifie qu'aucun chiffre après la virgule n'est souhaité, ce qui équivaut à demander un entier.
Fonction ARRONDI de VBA
VBA n'a pas de fonction « ARRONDI.SUP » intégrée. La plus proche est « ARRONDI », qui arrondit vers le haut ou le bas selon que le dernier chiffre est supérieur ou inférieur à 5. Par exemple, « ARRONDI(2,2 ; 0) » dans la fenêtre « Exécution » de VBA donne 2, au lieu de 3 qu'aurait donné « ARRONDI.SUP » d'Excel.
Propriété « Formula »
Bien que VBA n'ait pas sa propre fonction « ARRONDI.SUP », il peut utiliser celle d'Excel. Pour cela, définissez la propriété « Formula » de l'objet virtuel « Range » sur la fonction « ARRONDI.SUP ». Exemple : ouvrez l'environnement VBA avec « Alt » + « F11 » depuis Excel. Cliquez dans la fenêtre « Exécution », puis tapez : Range("A1").Formula = "=ARRONDI.SUP(2,2;0)". Retournez dans Excel avec « Alt+F11 ». Vous verrez le résultat « 3 » dans la cellule A1, confirmant l'application réussie de la fonction Excel.
Exemple interactif
Vous pouvez créer un programme VBA interactif qui demande à l'utilisateur les arguments de « ARRONDI.SUP » et affiche le résultat. Après ouverture de l'environnement VBA, collez le programme suivant :
Public Sub arrondirSup()
Dim a1, a2, s
a1 = CDbl(InputBox("Entrez le nombre à arrondir"))
a2 = CInt(InputBox("Entrez le nombre de décimales pour l'arrondi"))
s = "=ARRONDI.SUP(" & a1 & "," & a2 & ")"
Range("A1").Formula = s
Range("A1").Calculate
MsgBox (Range("A1").Value)
End Sub
Exécutez le programme en cliquant sur une de ses instructions, puis menu « Exécution » > « Exécuter ». Quand Excel demande les arguments, tapez-les et validez. Le programme affichera le résultat de « ARRONDI.SUP » pour vos arguments.
