Vous êtes sur la page 1sur 22

ISET Mahdia Programmation évènementielle

Chapitre 2 : Les éléments de base de VB.Net

Objectif Général

Ce chapitre présente les structures de base de la programmation en Visual Basic. Il présente


d’abord la notion des variables, les différents types standards, les opérateurs arithmétiques, Les
modificateurs d’accès, les structures usuelles: structures de contrôles conditionnelles et répétitives
et finalement les structures de données élaborées (tableau, structure).

Objectifs Spécifiques

A la fin de ce chapitre les étudiants auront les connaissances nécessaires pour :

 décrire les différents types de données utilisables pour la déclaration de variables ;


 nommer, déclarer, initialiser et utiliser des variables et des constantes ;
 déclarer des variables avec différents niveaux de portée ;
 créer des structures de données ;
 convertir des valeurs de variables d’un type de données en un autre type ;
 stocker des données dans des tableaux.
 créer des formules et des expressions conditionnelles à l’aide d’opérateurs arithmétiques,
logiques et de comparaison ;
 utiliser des instructions If.Then pour évaluer si une condition est vraie ou fausse et canaliser
le flux du programme en conséquence ;
 utiliser des instructions Select Case pour tester les différentes valeurs d’une même
expression et exécuter les instructions correspondantes ;
 utiliser des instructions Do.Loop pour exécuter des instructions jusqu’à ce qu’une condition
spécifique soit remplie ou pendant qu’elle est remplie ;
 utiliser des instructions For.Next pour exécuter des instructions un nombre de fois déterminé
 choisir la structure de décision ou la boucle appropriées en fonction des conditions requises
par l’application.

Pré-requis
Algorithmique, programmation.

Mme. BOUGHAMMOURA Héla 1


ISET Mahdia Programmation évènementielle

Volume horaire
3 Heures

Table des matières

1. Variable et opérations arithmétiques ....................................................................................... 3

1.1. Notion de Variable ......................................................................................................................... 3

1.2. Les différents types de variables ............................................................................................. 4

1.3. Opérateurs arithmétiques ........................................................................................................... 5

1.4. Convertir des variables................................................................................................................. 6

1.5. La portée des variables ................................................................................................................ 7

2. Déclaration des constantes ......................................................................................................... 9

3. Les énumérations ........................................................................................................................... 9

4. Structure et tableaux ................................................................................................................ 11

4.1. Les Structures ............................................................................................................................. 11

4.2. Les Tableaux ................................................................................................................................. 12

5. Instructions conditionnelles ...................................................................................................... 15

5.1. If … Then … Else … End If ......................................................................................................... 15

5.1.1. Forme simple : .............................................................................................................. 16

5.2. Select case … Case … Case … Case Else … End Select ......................................................... 18

6. Instructions répétitives ............................................................................................................ 19

6.1. For … To … Next .................................................................................................................... 19

6.2. Do While … Loop / Do … Loop While … .................................................................................... 20

6.3. Do Until … Loop / Do … Loop Until …........................................................................................ 21

6.4. For … Each … Next .......................................................................................................... 22

Mme. BOUGHAMMOURA Héla 2


ISET Mahdia Programmation évènementielle

Chapitre 2 : Les éléments de base de VB.Net

1. Variable et opérations arithmétiques

1.1. Notion de Variable

Les variables sont nécessaires pour stocker une valeur dynamique et réutilisable. C'est en
fait une simple zone mémoire qui porte un nom choisi par le programmeur. Le nom de la variable
est une adresse mémoire. Il faut déclarer chaque variable en précisant le type de celle-ci. La
déclaration se fait avec le mot réservé Dim.

Syntaxe :

Dim <NomVariable> As <Type>

Pour la lisibilité du code on peut les commenter après une apostrophe ( ‘ ).


En ce qui concerne les noms des variables, on peut utiliser des majuscules, minuscules et
chiffres. Les espaces et autres caractères spéciaux ne sont pas acceptés (accents, @, #). Le nom de
la variable ne peut pas commencer par un chiffre.
'Exemples de noms de variables
MaVariable 'est acceptée
COOL 'est acceptée
Je_Suis_1_Variable 'est acceptée
2Variable 'est refusée

2_Variable 'est refusée


The Variable 'est refusée
Différent 'est refusée

Pour utiliser une variable, il faut avant tout la déclarée et l'instancier. Pour cela on utilise le
mot clé " Dim " pour la déclarée et " new " pour 'instancier.

'Exemples de déclarations de variables


Dim Ma_Variable As String

Dim Nombre As Integer

Mme. BOUGHAMMOURA Héla 3


ISET Mahdia Programmation évènementielle

Dim Compteur As Integer

'Instancier des variables


Dim Msn As New Msn_Protocol ' Msn_Protocol est une class
Dim Test As New Class

Vous pouvez affecter des valeurs aux variables une fois qu’elles sont déclarées, comme montré
dans l’exemple suivant :

Dim birthday As Date

birthday = #3/9/1974#

Dim birthday As Date = #3/9/1974#

Dim goodNews As String = "Votre chèque est au courrier."

Dim testCondition As Boolean = True

Lorsque vous créez une variable à l’aide de l’instruction Dim, Visual Basic initialise
automatiquement les variables numériques sur 0, les chaînes de texte sur vide ("") et les variables de
type date sur Janvier 1, 0001.
1.2. Les différents types de variables

Le langage VB utilise plusieurs types de données dont les plus utilisés sont le type String
(chaîne de caractères), le type Integer (entier) et le type Single (décimal). Les types standards de
données en VB sont résumés dans le tableau ci-dessous.

Mémoire occupée Plage Utilisation principale


Type de variable

Pour les conditions


Boolean 2 octets
Byte 1 octet Pour les fichiers
Char 2 octets Pour les caractères
8 octets
Date Pour les dates
Decimal 16 octets Pour les nombres décimaux

Mme. BOUGHAMMOURA Héla 4


ISET Mahdia Programmation évènementielle

4 octets
Integer Pour les nombres entiers
Pour les entiers longs
Long 8 octets
2 octets
Short Pour les entiers courts
4 octets Pour les grands nombres à virgules
Single
(avec simple précision)
Variable
String Pour les chaînes de caractères

Tableau 2.1 : Les différents types de variables

1.3. Les opérateurs arithmétiques

Opérateur Description Exemples

+ ,- Addition et soustraction 12+34 ; 87.33 _ 456.66

* Multiplication 34*67

/ Division décimale 36 /25 = 1 .44

^ Puissance 5^3= 125

\ Division entière 36\25 = 1

MOD Modulo (reste de la division entière) 36 MOD 25 = 11

Tableau 2.2 : Les opérateurs arithmétiques

Si, dans une expression arithmétique plusieurs opérateurs sont utilisés, les priorités sont résolues
comme indiqué dans le tableau qui suit :
Opérateur Description Priorité

() Parenthèses 1

^ Puissance 2

- Négation 3

*,/ Multiplication, Division décimale 4

\ Division entière 5

MOD Modulo (reste de la division entière) 6

Mme. BOUGHAMMOURA Héla 5


ISET Mahdia Programmation évènementielle

+, - Addition et soustraction 7

Tableau 2.3 : Les priorités des opérateurs arithmétiques

1.4. Convertir des variables

Dans tous langages de programmation, il peut être utile de convertir des variables d'un type dans un
autre type. Cela permet d'éviter la création de nouvelles variables qui alourdiraient le programme.
Le tableau suivant résume les fonctions permettant de convertir les variables.

Fonction de conversion Convertir vers le type


CBool Boolean

CByte Byte

CChar Char

CDate Date

CDbl Double

CDec Decimal

CInt Integer

CLng Long

CObj Object

CShort Short

CSng Single

CStr String

Tableau 2.4 : Les fonctions de conversion du type d’une variable

Exemple :

Dim myDateString, myTimeString As String

Dim myDate, myTime As Date

myDateString = "Février 12, 1969"

myTimeString = "4:35:47 PM"

’ Convertit en type de données Date

myDate = CDate(myDateString)

Mme. BOUGHAMMOURA Héla 6


ISET Mahdia Programmation évènementielle

myTime = CDate(myTimeString)

Pour convertir un Object dans un type (String, Integer...), on utilise la commande 'CType'

CType(a, String) 'a va être convertit en 'String'

1.5. La portée des variables

1.5.1. Définitions

Une variable peut être utilisée que si elle est visible dans le programme. Pour définir le niveau de
visibilité de chaque variable, il existe un mot clé propre à chaque cas.

 Public : Partout dans le programme.


 Friend : Les membres Friend ne sont accessibles qu'à l'intérieur du projet, et pas par des
éléments extérieurs au projet en cours.
 Private : Partout dans la classe ou le module où elle a été créée.
 Dim : Seulement dans la procédure ou la fonction créée
 Protected : Les membres Protected sont similaires aux Private, mais ils ont une particularité
en cas d'héritage.

Module ou classe publique

Public A As Integer

Module ou classe Friend

Friend B As Date

Module ou classe Private

Private C As String

Procédure ou bloc

Dim D As Integer

Figure 2.1 : La portée des variables

La variable A est accessible à partir de n’importe quel projet de la solution.


La variable B est accessible n’ importe où dans le projet.

Mme. BOUGHAMMOURA Héla 7


ISET Mahdia Programmation évènementielle

La variable C est accessible n’ importe où dans le module.


La variable D est accessible uniquement dans la procédure ou le bloc.

1.5.2. Déclaration de variables locales

Les variables déclarées dans un bloc ou dans une procédure sont appelées variables locales, leur
portée sont donc limitée à la procédure ou au bloc dans lequel elles sont déclarées.

 Exemple de variable locale : au niveau du bloc

If x < > 0 then

Dim var as number

Var = x + 1

End

 Exemple de variable locale : au niveau de la procédure

Private Sub permutation ( valeur1 As Integer, valeur2 As Integer )

Dim variable As Integer

variable = valeur1

valeur1 = valeur2

valeur2 = variable

End Sub

La durée de vie d’une variable locale commence au moment où une procédure l’appelle et s’achève
lorsque celle-ci se termine. Une fois la durée de vie de la variable locale écoulée, l’instance de la
variable est détruite et sa valeur perdue.

1.5.3. Déclaration de variables statiques

Une variable statique survit tant que l’application s’exécute. Ces variables statiques demeurent en
vie et conservent leurs valeurs les plus récentes entre les appels faits à la procédure dans laquelle
elles sont déclarées. La déclaration d’une variable statique se fait à travers le mot clé static et sans
modificateur d’accès.
Syntaxe :

static <NomVariable> As <Type>

Exemple :
Sub AddItem_Click( )

Mme. BOUGHAMMOURA Héla 8


ISET Mahdia Programmation évènementielle

Static items As Integer

‘Ajouter 1 au compteur
items += 1

MessageBox.Show (" Le compte est actuellement de " & items)

End Sub

Les variables statiques sont utiles pour la mise à jour des compteurs utilisés exclusivement
au sein d’une procédure. L’exemple suivant montre comment déclarer une variable statique
enregistrant le nombre de fois que la procédure AddItem s’exécute. À chaque exécution, la valeur
stockée dans items est incrémentée de 1.

1.5.4. Déclaration de variables de module

Les variables qui ne sont pas déclarées dans une procédure, mais dans un module, une classe
ou une structure s’appellent des variables de module. Après avoir déclaré une variable de module,
vous pouvez lui affecter une valeur et lui assigner une portée par l’intermédiaire d’un modificateur
d’accès.
Exemple :
Private myModuleMessage As String

Friend myProjectMessage As String

Public mySolutionMessage As String

2. Déclaration des constantes


Pour déclarer une constante, utilisez l’instruction Const avec la syntaxe suivante :
Syntaxe :

Const NomConstant As Type


Exemple :

Dim surface, rayon, périmètre As Double

Const Pi As Double = 3.1415

surface = Pi * rayon ^ 2

périmètre = 2 * Pi * rayon

3. Les énumérations

Mme. BOUGHAMMOURA Héla 9


ISET Mahdia Programmation évènementielle

Une énumération va nous permettre de définir un ensemble des constantes qui sont liées entre elles.
La déclaration se fait de la manière suivante :

Enum jours
Dimanche
Lundi
Mardi
Mercredi
Jeudi
Vendredi
Samedi
End Enum

Par défaut, la première valeur de l’énumérateur est initialisée à zéro. Les constantes suivantes sont
ensuite initialisées avec un incrément de un. La déclaration précédente aurait pu s’écrire :

Const Dimanche = 0
Const Lundi = 1
Const Mardi = 2
Const Mercredi = 3
Const Jeudi = 4
Const Vendredi = 5
Const Samedi = 6

La séquence d’incrémentation automatique dans une énumération peut être interrompue, voire ne
pas être utilisée comme dans l’exemple suivant :

Enum Taille
Ali = 156
Samia = 163
Saber = 173
Sofien = 187
End Enum

Il faut toutefois que les valeurs utilisées dans l’énumération soient des valeurs entières.

Une fois elle est définie, une énumération peut être ensuite être utilisée comme un type de
variable spécifique.

Dim T1 NomConstant As Taille

Les seules valeurs que vous pouvez affecter à votre variable Taille sont celles qui sont
définies dans l’énumérateur.

Mme. BOUGHAMMOURA Héla 10


ISET Mahdia Programmation évènementielle

T1 Taille.Joe

Console.WriteLine(T1)

4. Structure et tableaux
4.1. Les Structures
4.1.1. Déclaration de structures

Vous pouvez déclarer des structures dans un fichier source, à l’intérieur d’un module ou
d’une classe, mais pas dans une procédure.
Syntaxe :

<ModificateurAccès > Structure < NomDeLaStructure>

’ Déclarer les membres de la structure ici

End Structure

Vous devez déclarer chaque donnée membre d’une structure et spécifier pour chacune son
niveau d’accès. Ceci implique que chaque instruction située dans la section de déclaration des
variables de la structure utilise Dim, Friend, Private ou Public.
Il est impossible d’initialiser des données membres dans la déclaration de structure. En
déclarant une variable comme étant de type structure, vous affectez des valeurs aux membres alors
accessibles par l’intermédiaire de la variable.
Exemple :

Public Structure Employe

’ Membres Public, accessibles dans toute la région de déclaration

Public Nom As String

Public Prenom As String

’ Membres Friend, accessibles de n’importe quel endroit dans le même assembly

Friend Mobile As Integer

Friend Tel As Long

’ Membres Private, accessibles uniquement dans la structure elle-même

Private Salaire As Double

End Structure

Mme. BOUGHAMMOURA Héla 11


ISET Mahdia Programmation évènementielle

4.1.2. Utilisation de structures

Une fois la structure créée, vous pouvez déclarer des variables de niveau de procédure et de
niveau de module comme étant de type structure. Vous pouvez ensuite affecter des valeurs aux
membres de données de la structure des variables et écrire le code permettant d’utiliser les membres
de la structure.
Exemple :

Dim Employe_1 As Employe

Pour affecter et récupérer des valeurs à partir des différents éléments d’une variable de
structure, utilisez le nom de la variable que vous avez créée avec l’élément dans le bloc de la
structure. Séparez le nom de l’élément par un point.

Employe_1. Nom =”Ahmed”

Employe_1. Prenom =”Ben Salah”

Employe_1. Mobile =92 345 678

Employe_1. Tel =72 344 655

Employe_1. Salaire =900.567

4.2. Les Tableaux

Un tableau est une séquence d’éléments de données appartenant à un même type. Vous
pouvez accéder aux éléments individuels d’un tableau en utilisant le nom du tableau et un ou
plusieurs index (commençant à 0) pour spécifier la position de l’élément dans le tableau. Un tableau
peut présenter une ou plusieurs dimensions avec un ou plusieurs éléments dans chaque dimension.

4.2.1. Déclaration d’un tableau unidimensionnel

Vous déclarez un tableau en spécifiant les éléments suivants :

 Nom du tableau
 Taille (nombre d’éléments)
 Type de données des éléments du tableau
 Modificateur d’accès (si nécessaire)

Mme. BOUGHAMMOURA Héla 12


ISET Mahdia Programmation évènementielle

Syntaxe :

ModificateurAccès NomTableau(N) As Type

Cette instruction déclare un tableau NomTableau de taille N+1. Pour accéder au i ème élément du
tableau, il faut préciser l’indice entre parenthèses comme suit : NomTableau(i-1), i doit être compris
dans l’intervalle [0, N].
Vous pouvez déclarer des tableaux locaux au moyen de l’instruction Dim et en intégrant la
déclaration à l’intérieur d’une procédure. Pour créer un tableau public, utilisez le mot clé Public à la
place de Dim.
Exemples :

’ Déclarations d’un tableau local

Sub initialisation( )

’ Allouer 31 éléments (0) à (30)


Dim Tab(30) As Decimal
Dim number As Integer
For number = 0 to 30

Tab(number) = 100

Next number

End Sub

’ Déclarations d’un tableau public

Public entiers(14) As Integer

Public réels(20) As Double

Public entiers( ) As Integer = {1, 2, 3, 4, 5, 6, 7}

Public Grille ( , ) As Integer ={{1,2},{3,4}}

Mme. BOUGHAMMOURA Héla 13


ISET Mahdia Programmation évènementielle

4.2.2. Déclaration de tableaux multidimensionnels

Pour déclarer une variable de tableau multidimensionnel, ajoutez une paire de parenthèses
après le nom de la variable et utilisez des virgules à l’intérieur pour séparer les dimensions.

Syntaxe :

’ Tableau quadridimensionnel

Dim My4DArray(2, 6, 4, 1) As Integer

Exemples :

Dim 2DArray(3, 2) As Double

2DArray (2, 1) = 24

2DArray (2, 1) = 12

2DArray (2, 1) = 24

4.2.3. Redimensionnement des tableaux

Dans Visual Basic .NET, vous pouvez redimensionner un tableau à tout moment en lui
spécifiant une nouvelle grandeur. Vous pouvez même changer le nombre de dimensions du tableau.
Redimensionner les tableaux permet de gérer plus efficacement la mémoire. Vous pouvez par
exemple utiliser un grand tableau pour une courte durée et ensuite le réduire. En agissant ainsi, vous
libérez la mémoire dont vous n’avez plus besoin.
Syntaxe :

ReDim tableauExistant ( NouvelleGrandeur )

Mme. BOUGHAMMOURA Héla 14


ISET Mahdia Programmation évènementielle

Exemple :
Dim number, myArray( ) As Integer
’ Allouer 6 éléments
ReDim myArray(5)
For number = 0 to 5

’ Initialiser tableau
myArray(number) = number

Next number

’ Redimensionner à 11 éléments
ReDim myArray(10)
For number = 0 To 10

’ Initialiser tableau
myArray(number) = number

Next number

Lorsque vous redimensionnez (ReDim) un tableau, ses valeurs existantes sont normalement
perdues. Toutefois, vous pouvez les conserver en incluant le mot clé Preserve dans l’instruction
ReDim.
Exemple :

ReDim Preserve myArray(10)

Cette l’instruction alloue un nouveau tableau, initialise ses éléments à partir des éléments
correspondants de myArray existant et assigne le nouveau tableau à myArray.

5. Instructions conditionnelles

Les deux instructions conditionnelles le plus utilisées en VB sont : If Then et Select Case.

5.1. If … Then … Else … End If

Si la condition se trouvant après le mot réservé If est vraie, les instructions qui suivent le
mot réservé Then sont exécutées sinon, ce sont celles qui suivent le mot réservé Else qui sont
exécutées. L’instruction If se termine (obligatoirement) avec les mots réservés End If.

Mme. BOUGHAMMOURA Héla 15


ISET Mahdia Programmation évènementielle

5.1.1. Forme simple :


Syntaxe :

If condition(s) Then
Instruction11
Instruction12
Else
Instruction21
Instruction22
End If

Exemple :

If Moyenne >= 12 Then

Admis = Admis + 1

MsgBox(" Candidat admis ")

Else

Ajournés = Ajournés + 1

MsgBox(" Candidat ajourné ")

End If

5.1.2. Forme imbriquée


Syntaxe

If condition(s) Then
Instruction11
If condition Then
Instruction12
Else if condition Then
Instruction13
Else
Instruction14
End If
Else
Instruction21
Instruction22

End If

Exemple :

If NombreProposé > NombreATrouver Then

Mme. BOUGHAMMOURA Héla 16


ISET Mahdia Programmation évènementielle

MsgBox("Votre nombre est trop grand !")

ElseIf NombreProposé < NombreATrouver Then

MsgBox("Votre nombre est trop petit !")

Else

MsgBox("Gagné !")

End If

A. Les opérateurs de comparaison

Opérateur Signification Exemple Résultat


= Égal à 15 = 11 +4 true

> Supérieur à 15 > 11 true

< Inférieur à 11 = 15 false

<> Diddérent de 23 <> 23.1 true

>= Supérieur ou égale à 23 >= 23.1 false

<= Inférieur ou égale à 23 <= 23.1 true

Tableau 2.5 : Les opérateurs de comparaison

Si plusieurs conditions doivent être testées, celles-ci doivent être combinées avec des opérateurs
logiques. VB accepte les opérateurs logiques suivants: AND, OR, NOT et XOR. La signification de
chacun d’eux est présentée dans le tableau qui suit:
Opérateur Signification Exemple Résultat
AND Connexion ET. Il faut que ( 1 = 1) AND (2 < 4) True
les conditions soient ( 1 > 2) AND (2 = 4) False
vraies pour que le résultat
soit vrai
OR Connexion OU. Il faut que ( 1 = 2) OR (3 < 2) False
l’une des deux ( 1 > 2) OR (2 > 1)
True
conditions soit vraie pour
que le résultat soit vrai
NOT Connexion NON. La valeur EstCeVrai True
logique est inversée. NOT EstCeVrai
False

XOR Connexion OU exclusif. ( 1 = 1) XOR (2 = 2) False


Une seule des deux ( 2 > 1) XOR (3 < 1) True
conditions doit être vraie
pour que le résultat soit
vrai

Mme. BOUGHAMMOURA Héla 17


ISET Mahdia Programmation évènementielle

Tableau 2.4 : Les opérateurs logiques

5.1.3. IIf (Condition, ValeurSiVrai, ValeurSiFaux)

Syntaxe :
IIf (Condition, ValeurSiVrai, ValeurSiFaux)

Exemple :
Dim Note As Single

Dim Réponse As String

Note = InputBox (" Tapez votre note ")

Réponse = IIf (Note >= 10, " Admis ", " Ajourné ")

MsgBox (Réponse)

5.2. Select case … Case … Case … Case Else … End Select

L’instruction Select Case est une instruction conditionnelle alternative, c’est-à-dire qu’une
expression peut être testée par rapport à plusieurs valeurs possibles.

Syntaxe :

Select Case expression

Case Liste_Valeurs_1

Instruction11

Instruction12

Case Liste_Valeurs_2

Instruction21

Case Else

InstructionElse1

InstructionElse2

End Select

Mme. BOUGHAMMOURA Héla 18


ISET Mahdia Programmation évènementielle

Les instructions se trouvant après Case Liste_Valeurs_i seront exécutées si ‘expression = à l’un des
éléments de Liste_Valeurs_i, i = 1, 2, 3, …. Sinon, les instructions se trouvant après Else Case seront
exécutées. Liste_Valeurs_i peut être :

 une suite de valeurs : 1, 3, 5, 7, 9


 une fourchette de valeur : 0 To 9
 une plage de valeur : Is >= 10 (Is est un mot réservé)

Exemple 1

Select Case CodeASCIICaractère

Case 65, 69, 73, 79, 85

MsgBox(" C’est une voyelle ")

Case 66 To 90

MsgBox(" C’est une consonne ")

Case Else

MsgBox(" Ce n’est pas une lettre ")

End Select

Notez que Liste_Valeurs_i peut être une combinaison de listes de valeurs comme dans le cas des
exemples suivants :
Case 1 To 4, 7 To 9, 11, 13, Is > NombreMAx

Case "Lundi", "Mercredi", "Dimanche", VariableJour

6. Instructions répétitives

Les instructions répétitives sont utilisées pour boucler sur une suite d’instructions.
6.1. For … To … Next

Si le nombre de boucles est connu à l’avance, on utilise l'instruction For … To … Next.


Syntaxe

For Compteur = Début To Fin [Step Incrément]

Instructions

[ ... Exit For] ‘ pour une interruption préalable de la boucle

[Instructions]

Next [Compteur] ‘ le mot Compteur est facultatif

Mme. BOUGHAMMOURA Héla 19


ISET Mahdia Programmation évènementielle

Exemple :

Dim i As Integer

Dim Chaîne As String

Dim TabInitial(1 To 12) As Single

For i = 1 To 12

Chaîne = InputBox("Température N° " & Compteur)

TabInitial(i) = Chaîne

Next i ‘le i n’est pas obligatoire

6.2. Do While … Loop / Do … Loop While …

6.2.1. Test antérieur


Syntaxe

Do While Condition
Instructions
[... Exit Do]
[Instructions]
Loop

La condition est ici testée au début, c'est-à-dire à l’entrée de la boucle. Avec While (tant que), la
boucle est répétée tant que la condition est vraie. Si la condition n’est pas vraie au départ, les
instructions de la boucle ne sont pas exécutées.
Exemple

Do While MotProposé <> MotDePasse


MotProposé = InputBox("Donnez votre mot de passe")
Loop

Cela présuppose que MotProposé soit initialisé par une valeur autre que MotDePasse (par exemple,
la valeur par défaut "").

6.2.2. Test postérieur


Syntaxe

Do
Instructions
[... Exit Do]
[Instructions]
Loop While Condition
La condition est alors testée à la fin de la boucle. Avec While (tant que), la boucle est répétée tant
que la condition est vraie. Les instructions de la boucle sont donc exécutées au moins une fois.

Exemple

Mme. BOUGHAMMOURA Héla 20


ISET Mahdia Programmation évènementielle

Do
MotProposé = InputBox("Donnez votre mot de passe")
Loop While MotProposé <> MotDePasse

6.3. Do Until … Loop / Do … Loop Until …

6.3.1. Test antérieur


Syntaxe :

Do Until Condition
Instructions
[... Exit Do]
[Instructions]
Loop

La condition est ici testée au début, c'est-à-dire à l’entrée de la boucle. Avec Until (jusqu'à), la
boucle est répétée jusqu'à ce que la condition soit vraie. Si la condition est vraie au départ, les
instructions de la boucle ne sont pas exécutées.
Exemple

Do Until MotProposé = MotDePasse

MotProposé = InputBox("Donnez votre mot de passe")

Loop

6.3.2. Test postérieur


Syntaxe :

Do
Instructions
[... Exit Do]
[Instructions]
Loop Until Condition

La condition est alors testée à la fin de la boucle. Les instructions de la boucle sont donc exécutées
au moins une fois. Avec Until (jusqu'à), la boucle est répétée jusqu'à ce que la condition soit vraie.
Exemple :

Do
MotProposé = InputBox("Donnez votre mot de passe")
Loop Until MotProposé = MotDePasse

Mme. BOUGHAMMOURA Héla 21


ISET Mahdia Programmation évènementielle

6.4. For … Each … Next

C’est une extension de la boucle For ... To … Next.

Syntaxe:

For Each Elément In Ensemble


Instructions
[ ... Exit For]
[Instructions]
Next [Elément]

Exemple :

Dim TabHasard(100) As Integer

Dim Cellule As Integer

Dim Réponse As String

Randomize ‘initialise le générateur de nombres au hasard


For Each Cellule In TabHasard

Cellule = Rnd * 100 + 1 ‘génère un nombre au hasard entre 1 et 100


Next

For Each Cellule In TabHasard

Réponse = Réponse & Cellule & " " ‘Concaténation de chaînes de caractères
Next

MsgBox (Réponse)

Mme. BOUGHAMMOURA Héla 22

Vous aimerez peut-être aussi