excel-vba
Expressions conditionnelles
Recherche…
La déclaration If
L'instruction If
control permet d'exécuter du code différent en fonction de l'évaluation d'une instruction conditionnelle (booléenne). Une instruction conditionnelle est une instruction qui a la valeur True
ou False
, par exemple x > 2
.
Trois modèles peuvent être utilisés lors de l'implémentation d'une instruction If
, décrits ci-dessous. Notez qu'une évaluation conditionnelle If
est toujours suivie par une évaluation Then
.
1. Evaluer un énoncé conditionnel If
et faire quelque chose si c'est True
Une seule ligne If
déclaration
C'est le moyen le plus court d'utiliser un If
et il est utile quand une seule instruction doit être effectuée sur une évaluation True
. Lorsque vous utilisez cette syntaxe, tout le code doit être sur une seule ligne. N'incluez pas de End If
à la fin de la ligne.
If [Some condition is True] Then [Do something]
If
bloquer
Si plusieurs lignes de code doivent être exécutées lors d'une évaluation True
, un bloc If
peut être utilisé.
If [Some condition is True] Then
[Do some things]
End If
Notez que si un bloc If
multi-lignes est utilisé, une End If
correspondante est requise.
2. Évaluer une instruction If
conditionnelle, faire une chose si elle est True
et faire autre chose si elle est False
Ligne unique If
, déclaration Else
Cela peut être utilisé si une déclaration doit être effectuée lors d'une évaluation True
et une déclaration différente doit être effectuée sur une évaluation False
. Soyez prudent en utilisant cette syntaxe, car il est souvent moins clair pour les lecteurs qu'il existe une déclaration Else
. Lorsque vous utilisez cette syntaxe, tout le code doit être sur une seule ligne. N'incluez pas de End If
à la fin de la ligne.
If [Some condition is True] Then [Do something] Else [Do something else]
If
, Else
bloc
Utilisez un bloc If
, Else
pour ajouter de la clarté à votre code ou si plusieurs lignes de code doivent être exécutées sous une évaluation True
ou False
.
If [Some condition is True] Then
[Do some things]
Else
[Do some other things]
End If
Notez que si un bloc If
multi-lignes est utilisé, une End If
correspondante est requise.
3. Évaluer de nombreuses instructions conditionnelles, lorsque les instructions précédentes sont toutes False
, et faire quelque chose de différent pour chacune
Ce modèle est l'utilisation la plus générale de If
et serait utilisé lorsqu'il existe de nombreuses conditions qui ne se chevauchent pas et qui nécessitent un traitement différent. Contrairement aux deux premiers modèles, ce cas nécessite l'utilisation d'un bloc If
, même si une seule ligne de code sera exécutée pour chaque condition.
If
, ElseIf
, ...
, d' Else
bloc
Au lieu de devoir créer plusieurs blocs If
uns sous les autres, un ElseIf
peut être utilisé pour évaluer une condition supplémentaire. ElseIf
n'est évalué que s'il y a un précédent If
évaluation est False
.
If [Some condition is True] Then
[Do some thing(s)]
ElseIf [Some other condition is True] Then
[Do some different thing(s)]
Else 'Everything above has evaluated to False
[Do some other thing(s)]
End If
Autant d' ElseIf
contrôle ElseIf
peuvent être incluses entre un If
et un End If
si nécessaire. Une instruction de contrôle Else
n'est pas requise lors de l'utilisation d' ElseIf
(même si elle est recommandée), mais si elle est incluse, elle doit être l'instruction de contrôle finale avant End If
.