fonctions de feuille de calcul dans les macros VBA à l’aide de VBA dans Microsoft Excel
Dans VBAcode, si vous devez faire référence à certaines fonctions de feuille de calcul telles que Sum, Vlookup, etc., vous pouvez les utiliser directement en utilisant l’objet Application. Nous allons donc utiliser les fonctions comme – Application.WorksheetFunction.Sum ou Application.WorksheetFunction.Vlookup où WorksheetFunction est la méthode de l’objet Application.
Considérant que nous avons cette macro de test, si nous tapons Application.WorksheetFunction.
Nous obtiendrons une fenêtre contextuelle montrant la formule ci-dessous l’image
Ainsi, par exemple, si vous voulez additionner les valeurs de cette plage dans la colonne A en utilisant vba –
Permet d’avoir une variable appelée SalesTotal qui enregistrera la somme dedans.Pour obtenir le total dans SalesTotal, nous utiliserons le code VBA suivant dans le module standard:
_Sub macro4 ()
Dim SalesTotal As Long SalesTotal = Application.WorksheetFunction.Sum (Range (« A2: A6 »))
MsgBox SalesTotal End Sub_ Pour copier le code ci-dessus dans votre fichier, * Appuyez sur Alt + F11 sur le clavier.
-
Sur le côté gauche, vous verrez des objets Microsoft Excel.
-
Faites un clic droit et sélectionnez Insérer.
-
Cliquez ensuite sur Module.
-
Copiez le code dans la fenêtre de code à droite.
Lorsque nous utilisons cet exemple de macro, nous obtenons un message indiquant la valeur stockée dans Sales Total et pouvant être utilisée dans d’autres lignes de code de la macro.
La sortie que nous obtiendrons est –
Si vous souhaitez que SalesTotal soit affiché dans la cellule A7, vous pouvez modifier la ligne de code de Msgbox SalesTotal à Worksheets («Sheet1»). Range («A7»). Value = SalesTotal Considérant que nous avons également besoin des ventes moyennes pour ces chiffres dans la cellule A9.
Nous pouvons utiliser le code ci-dessous __Sub macro5 ()
Dim SalesTotal As Long With Worksheets (« Sheet1 »)
SalesTotal = Application.WorksheetFunction.Sum (.Range (« A2: A6 »))
End With End Sub__ Il y a de légères modifications à ce code par rapport au précédent.
-
Au lieu d’utiliser une variable pour la moyenne, j’ai directement rempli cette valeur après le calcul dans la cellule A9. Par conséquent, vous verrez la ligne .Range (« A9 »). Value = Application.WorksheetFunction.Average (.Range (« A2: A6 »))
-
La ligne msgbox a été supprimée.
-
La valeur de la variable SalesTotal va à la cellule A7.
-
Idéalement, vous pouvez répéter la même ligne de code qui a été utilisée pour la moyenne, pour la ligne de code Sum en remplaçant SalesTotal = Application.WorksheetFunction.Sum (.Range (“A2: A6”)) _ _.Range (“A7 ”) .Value = SalesTotal With _.Range (“ A7 ”). Value = Application.WorksheetFunction.Sum (.Range (“ A2: A6 ”)) _ Cependant, il a été conservé afin que vous puissiez comprendre les différentes manières de codant la même tâche. De même, nous pouvons utiliser d’autres fonctions tout en utilisant Application.WorksheetFunction. Toutes ces fonctions que nous pouvons utiliser directement dans la feuille de calcul, nous pouvons les utiliser ici.
Cela facilite l’utilisation des fonctions du code afin que nous puissions calculer les formules requises sans avoir à créer un code pour la formule.
_ _Si vous avez aimé nos blogs, partagez-les avec vos amis sur Facebook. Et vous pouvez aussi nous suivre sur Twitter et Facebook.
Nous serions ravis de vous entendre, faites-nous savoir comment nous pouvons améliorer, compléter ou innover notre travail et le rendre meilleur pour vous. Écrivez-nous à [email protected] __