IsNumeric (fonction vue à la page précédente) renvoie TRUE (vrai) si la valeur est numérique et FALSE (faux) si ce n'est pas le cas :
If
IsNumeric(Range(
"A1"
))
=
True
Then
'SI LA VALEUR
EST NUMERIQUE ...
Le code suivant est identique au premier (il n'est pas nécessaire d'indiquer = True puisque que l'on cherche automatiquement à savoir si la condition est vraie) :
If
IsNumeric(Range(
"A1"
))
Then
'SI LA VALEUR
EST NUMERIQUE ...
Dans le cas où nous voulons vérifier si la valeur n'est pas numérique, nous avons également deux possibilités :
If
IsNumeric(Range(
"A1"
))
=
False
Then
'SI LA VALEUR
N'EST PAS NUMERIQUE ...
If
Not
IsNumeric(Range(
"A1"
))
Then
'SI LA VALEUR
N'EST PAS NUMERIQUE ...
D'autres fonctions proches de IsNumeric :
If
IsDate(Range(
"A1"
))
Then
'SI LA VALEUR
EST UNE DATE ...
If
IsEmpty(Range(
"A1"
))
Then
'SI VIDE ...
If
var_objet
Is
Nothing
Then
'SI OBJET NON
INITIALISE ...
Pour effectuer des actions en fonction du type d'une variable (Variant), nous aurons besoin de la fonction VarType.
Après avoir ajouté le signe =, la liste des types apparaît :
If
VarType(ma_variable) = vbInteger
Then
'SI ma_variable
est de type Integer ...
La valeur des constantes :
Constante |
Valeur |
vbEmpty |
0 |
vbNull |
1 |
vbInteger |
2 |
vbLong |
3 |
vbSingle |
4 |
vbDouble |
5 |
vbCurrency |
6 |
vbDate |
7 |
vbString |
8 |
vbObject |
9 |
vbError |
10 |
If
VarType(ma_variable) = vbInteger
Then
'SI ma_variable
est de type Integer ...
'Identique à :
If
VarType(ma_variable) = 2
Then
'SI ma_variable
est de type Integer ...
Jusque-là nous n'avons vu que cela :
ma_variable =
"Exemple
12345"
If
ma_variable =
"Exemple
12345"
Then
' => VRAI
Les 2 chaînes de caractères sont identiques ici, rien d'extraordinaire ...
Maintenant, si nous voulons vérifier que la variable contienne bien la valeur "12345" sans tenir compte des autres caractères, nous utiliserons l'opérateur Like ainsi que * devant et derrière la valeur à rechercher.
Le caractère * peut remplacer : aucun, un ou plusieurs caractères :
ma_variable =
"Exemple
12345"
If
ma_variable
Like
"*12345*"
Then
' => VRAI
Le caractère # peut remplacer un caractère numérique de 0 à 9 :
ma_variable =
"Exemple
12345"
If
ma_variable
Like
"Exemple
12###"
Then
' => VRAI
Le caractère ? peut remplacer un caractère quelconque :
ma_variable =
"Exemple
12345"
If
ma_variable
Like
"?xemple?1234?"
Then
' => VRAI
Nous pouvons également remplacer un caractère en fonction d'une plage de caractères ou de caractères précis :
[abc] remplace un des caractères suivants : a b c
[a-g] remplace un des caractères suivants : a b c d e f g
[369] remplace un des caractères suivants : 3 6 9
[2-5] remplace un des caractères suivants : 2 3 4 5
[?*#] remplace un des caractères suivants : ? * #
ma_variable =
"Exemple
12345"
If
ma_variable
Like
"[BIEN]xemple
1234[4-7]"
Then
' => VRAI
Pour remplacer un caractère non compris dans les valeurs entre crochets, un ! doit être ajouté après [ :
ma_variable =
"Exemple
12345"
If
ma_variable
Like
"[!FAUX]xemple
1234[!6-9]"
Then
' => VRAI
Remarque : un caractère en majuscule n'est pas égal à ce même caractère en minuscule. Pour ne pas faire de distinctions entre majuscules-minuscules, placez Option Compare Text en début de module.