Comment créer une formule conditionnelle sur Excel VBA ?

La formule conditionnelle est une des fonctionnalités les plus utiles d’Excel VBA. Bon nombre de personnes n’arrivent pourtant pas à la créer sans aboutir à une erreur ou un bug. Ce tutoriel a été conçu à cette fin en expliquant la création d’une formule conditionnelle basique ou plus avancée. Focus sur : Comment créer une formule conditionnelle sur Excel VBA ?

Création de conditions de base pour une formule conditionnelle

Il arrive que vous deviez réaliser un calcul dans une cellule contenant une valeur bien précise. L’approche à suivre dans ce cas de figure est la création d’une formule conditionnelle à travers la fonction IF ou fonction SI. La formule conditionnelle génère une valeur différente selon la condition sélectionnée pour le calcul. L’argument sélectionné pour le calcul doit renvoyer vers une valeur logique. Cela signifie que la réponse fournie par la cellule peut être traitée par les attributs « Vrai » ou « Faux ».

Un test logique peut être créé à partir d’une quelconque combinaison de références de cellules, d’opérateurs ou de constantes. Il peut même résulter de la combinaison d’autres fonctions d’Excel. Il y a trois opérateurs en particulier qui sont souvent utilisés pour la production des valeurs « Vrai » ou « Faux ». Il s’agit des opérateurs « supérieur à » (>), « inférieur à » (<) ou « égal à » (=) pour les paramètres spécifiés.

Exemple :

Formule Description
=IF(AND(A2>0,B2<100),TRUE, FALSE) IF A2 (25) est supérieur à 0, AND B2 (75) est inférieur à 100, alors la valeur est TRUE, sinon renvoie FALSE. Dans ce cas, les deux conditions sont vraies, donc TRUE est renvoyé

Créer une formule conditionnelle sur Excel VBA

La valeur “if_True” est celle qui est renvoyée lorsque le test logique est paramétré pour l’attribut « Vrai ». L’argument soulevé ici peut correspondre à n’importe quelle variable susceptible de renvoyer une valeur. Le code “True”, en incluant les guillemets, doit être utilisé pour retourner l’attribut « Vrai » dans le texte. Des nombres, des références de cellules et des opérandes peuvent être inclus dans la formulation. L’essentiel est que les arguments utilisés puissent renvoyer une seule valeur.

Dans l’approche opposée, la valeur “if_False” est celle qui sera renvoyée si le test logique est défini sur « Faux ». L’argument utilisé peut être de toute nature à condition qu’il puisse renvoyer vers cette valeur.

Cependant, découvrez aussi 6 fonctions essentielles pour votre base de données sur notre site. Pour consulter la page, cliquez sur le lien !

Créer une formule conditionnelle sur Excel VBA : Programmation d’une formule conditionnelle avec des attributs avancés

Les consignes mentionnées précédemment se rapportent à une version basique de la formule conditionnelle sur Excel VBA. Pour une approche plus avancée, vous pouvez ajouter les fonctions “Not”, “And” et “Or” dans le test logique de la formule conditionnelle.

Dans le même esprit, il est possible de vérifier la présence de plusieurs conditions en utilisation utilisant des fonctions IF emboitées entre elles. Cela signifie que les fonctions IF sont spécifiées en tant que valeur pour les arguments “value_if_True” ou “value_if_False”. Une formule conditionnelle peut contenir jusqu’à 64 niveaux de fonctions IF emboitées entre elles.

Exemple :

Dans cet exemple, nous allons paramétrer le tableau afin d’avoir la condition “True” si une valeur est supérieure à 200, MAIS si la valeur est inférieure à 50, nous allons le renvoyer en “False”.

Créer une formule conditionnelle sur Excel VBA

Il est a priori possible de générer plusieurs conditions pour votre formule conditionnelle en utilisant des fonctions IF imbriquées. Un tel processus est cependant très fastidieux à mettre en œuvre. Pour vous simplifier la tâche, vous pouvez utiliser une fonctionnalité spéciale d’Excel VBA appelée fonction IFS.

Nos experts accompagnent les entreprises dans l'amélioration de leur productivité grâce à Excel, VBA, et Power BI.
Prenez rendez-vous pour discuter de votre projet avec un expert, ou découvrez nos offres plus en détails.