0% ont trouvé ce document utile (0 vote)
73 vues8 pages

Lexique Algorithmique

Ce document présente les instructions de base en algorithmique et leur équivalent en langage VBA. Il décrit la structure d'un algorithme et les principales instructions comme les affectations, calculs, affichages, structures conditionnelles et itératives. Le document contient également des explications sur le passage d'un algorithme au code VBA.

Transféré par

goudfay
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
73 vues8 pages

Lexique Algorithmique

Ce document présente les instructions de base en algorithmique et leur équivalent en langage VBA. Il décrit la structure d'un algorithme et les principales instructions comme les affectations, calculs, affichages, structures conditionnelles et itératives. Le document contient également des explications sur le passage d'un algorithme au code VBA.

Transféré par

goudfay
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

lOMoARcPSD|32927822

Lexique algorithmique

Master 1 (Génie Civil)

Fayçal Goudjil
lOMoARcPSD|32927822

Lexique des instructions de base en algorithmique

Algorithme : Ensemble d’instructions logiques aboutissant à un résultat.


En informatique l’algorithme permet dans un langage simple et compréhensible d’élaborer les bases d’un programme.
L’algorithme doit ensuite être adapté, traduit dans le langage choisi (VBA, C++, Pascal…)

Structure de base d’un algorithme :

 Un algorithme est toujours structuré de la manière suivante :

Nom_de_l’algorithme
Déclaration
Des variables et constantes utilisées dans l’algorithme

Début
Instructions
Fin

 Les variables se déclarent comme ceci :


- NOMVARIABLE : Type
Le type peut être : réel, entier, chaîne de caractère, date…

 Les constantes :
- Constante NOMCONSTANTE ← Valeur

A un moment donné une variable ne peut avoir qu’une seule valeur. La constante a une valeur fixe pour la durée
de l’exécution de l’algorithme.

Les instructions de base :

Affecter une valeur à une variable :


Afficher « message »
Saisir NOMVARIABLE

Le message est a adapté en fonction du contexte. Il coexiste une autre écriture :


Saisir « message » , NOMVARIABLE
La virgule est ici utile pour séparer l’affichage de la saisie.
Réaliser des calculs :
Les opérandes (+ , - , *, / ,^ ) s’appliquent aux variables et constantes. Il faut simplement affecter le résultat
d’une opération à une variable préalablement déclarée.
Exemple : MONTANT ← QUANTITE * PRIXU
Le résultat de la valeur de la variable QUANTITE multipliée par la valeur de la variable PRIXU sera affecté
comme valeur de la variable MONTANT.

Afficher un message simple à l’écran :


Afficher « message »

Afficher un message incluant des variables à l’écran :


Afficher « début_message », NOMVARIABLE, « fin_du_message »

Exemple : Afficher « le montant HT est de », MONTANT, « euros. »

Les structures conditionnelles

Simple :
Si conditions
Alors instructions
FinSi

Alternatives :
Si conditions
Alors instructions 1
Sinon instructions 2
FinSi

Fayçal Goudjil
lOMoARcPSD|32927822

Les instructions peuvent être des calculs, des messages affichés, ouvrir d’autres structures conditionnelles…la
logique est la même qu’avec la structure conditionnelle sous tableur.

Les structures itératives

Le Pour - Fin pour

Pour I de 1 à N faire
Instructions
Fin pour
Permet d’exécuter un nombre de boucle N fois, N étant une variable ou un nombre directement inscrit dans
l’instruction.
Il faut donc déclarer la variable N et la variable I (tous deux entiers).

I est un indice qui prend la valeur 1 lors de la première lecture puis à chaque passage à l’instruction Fin Pour 1
est ajouté à cet indice et on boucle pour revenir au test de l’instruction Pour. La valeur de l’indice est alors
comparée à N si la valeur de l’indice I est supérieure à la valeur de N alors les instructions ne sont plus réalisées.

Répéter Jusqu’à

Répéter
Instructions
Jusqu’à condition
Les instructions sont réalisées une première fois puis si la condition de sortie est vérifiée on arrête l’exécution de
la boucle.

Exemple :
Répéter
Instructions
Afficher « Voulez vous poursuivre le traitement ? Répondez par Oui ou Non »
Saisir REPONSE
Jusqu’à REPONSE = « Non »
Dans ce cas il faut déclarer la variable REPONSE

Tant Que - Fin Tant Que

Tant Que condition Faire


Instructions

Fin Tant Que


Si la condition est vérifiée les instructions sont exécutées une première fois et sont ensuite ré exécutées tant que
la condition est vérifiée.

Exemple :
--/--
Afficher « Faut-il réaliser un traitement ? Oui / Non »
Saisir REPONSE
Tant Que REPONSE = « Oui » Faire
Instructions
Afficher « Faut – il réaliser un autre traitement ? Oui / Non ? »
Saisir REPONSE
Fin Tant Que
-- / --

Initiation au VBA.

VBA Visual Basic pour Application est un langage de programmation orienté objet qui est commun à toutes les
applications de la suite Microsoft Office.
VBA s’utilise en environnement Visual Basic Editor.
La programmation permet d’automatiser des actions répétitives, créer des formulaires (boîtes de dialogue),
personnaliser Excel, modifier les options d’Excel, communiquer avec les autres applications Microsoft Office…

 Quelques règles pratiques

Fayçal Goudjil
lOMoARcPSD|32927822

Les règles d’écritures concernant les algorithmes sont à observer également pour la programmation :
- Le retour à la ligne,
- les tabulations à placer pour marquer une boucle ou une alternative,
- les variables en majuscules…

 Passage de l’algorithme au VBA

Instructions algorithmiques Instructions VBA

Titre de l’algo (nom du programme) et Début Sub nom_du_programme

Fin End Sub

Déclaration Juste après le Sub, il n’y a pas de mot réservé

Déclaration d’une variable exemple : TTC : réel Dim TTC as Single

Type de variable :
- entier court (-32768 à 32767): Integer
- entier long : Long
- réel simple : Single
- réel double : Double
- chaîne de caractères String (si on veut limiter la longueur ajouter * nombre de caractères
maximums exemple : Dim NOM as String*20)
- date Date

Constante exemple : Constante TVA : 19,6 Const TVA = 19.6 (attention la virgule est remplacée par un
point)

Affectation exemple : TTC  HT + TVA TTC = HT + TVA

Signes opérations addition : +


soustraction : -
multiplication : *
division : /
élever à la puissance : ^

Instructions algorithmiques Instructions VBA

Afficher message variable = InputBox (« message »)


Saisir variable
Exemple Exemple :
Afficher « Quel est le montant du chiffre d’affaires ? » CA= InputBox (« Quel est le montant du chiffre d’affaires ?»)
Saisir CA
L’affichage apparaît sous la forme d’une boîte de dialogue où
une zone de saisie permet d’inscrire la valeur.

Afficher un message et des variables ensemble sans MsgBox « le prix de vente TTC est de » & TTC & « euros »
attendre de saisie.
Exemple : Afficher « le prix de vente TTC est de » , L’affichage apparaît sous la forme d’une boîte de dialogue.
TTC, « euros » Le sigle & permet de faire une concaténation c’est à dire

Fayçal Goudjil
lOMoARcPSD|32927822

placer un ensemble de caractères à la suite du message. Il


correspond à la virgule en algorithme.

Commentaires { commentaires } Rem commentaires


ou ‘ commentaires

SI conditions If conditions Then


ALORS instructions si vrai instructions si vrai
SINON instruction si faux Else instruction si faux
FINSI End If

POUR I de 1 à 10 FAIRE For I = 1 to 10


instructions instructions
FIN POUR Next

TANT QUE conditions FAIRE While conditions


Instructions Instructions
FINTANTQUE Wend

REPETER instructions Do
JUSQUA conditions instructions
Loop While conditions

Instructions particulières Pour l’affichage


saut de paragraphe vbCr
Saut de ligne vbLf
Retour à la ligne et saut de ligne pour l’affichage vbCrLf
Insertion d’une tabulation vbTab

Fayçal Goudjil
lOMoARcPSD|32927822

 Pour concevoir un programme en VBA

1 Concevoir l’algorithme correspondant

2 Ouvrir le classeur où doit être inséré le programme (module)

3 Lancer Visual Basic Editor en utilisant les touches ALT et F11

4 Afficher l’explorateur de projet Affichage / Explorateur de projet

5 Cliquer sur la feuille concernée (feuil1 par exemple)

6 Dans la fenêtre à droite saisir le programme (insertion module)

7 Faire un essai en lançant l’exécution

8 Corriger le programme, refaire des essais, enregistrer le classeur.

 Affecter une valeur d’un programme à une cellule d’Excel

Cette instruction n’existe pas en algorithmique, l’écriture en VBA est la suivante :


Range("référence_cellule") = valeur
valeur peut être :
- une valeur fixe exemple : Range("D12") = 9
- une variable Range("D12") =NOMCLI

 Aller chercher une valeur dans une cellule de la feuille Excel pour l’utiliser dans le programme

NOMVARIABLE = Range("référence_cellule")
Exemple :
NOMCLI = Range(« G5 »)

 Insérer un bouton d’appel d’un programme dans la feuille d’Excel

1 Activer les barres d’outil Visual Basic et Formulaires

2 Activer le mode création

3 Insérer le bouton et associer le nom du programme.

Exemples
Voici les programmes en VBA des algo 1, 4 et 10 proposés dans la formation.
On obtient une traduction –partielle- en VBA depuis le logiciel Pratiquer l’Algorithmique via le menu
TRADUCTION > Visual Basic.

Fayçal Goudjil
lOMoARcPSD|32927822

Dès lors vous pouvez copier cette traduction puis la coller dans un module VBA d’Excel puis l’exécuter.

Néanmoins plusieurs rectifications sont nécessaires :


Afficher/saisir à remplacer par InputBox
Afficher par MsgBox
Pour les constantes il y a des espaces à supprimer pour la valeur (autour de la « , »)
En boucle POUR effacer le Faire
Mettre le End Sub à la fin du programme.

Pour visualiser les instructions dans le module 1 : ALT-F11

Traduction Algo 01

Sub Algorithme01()

Dim Prix As Single


Dim Quant As Integer
Dim Montant As Single
Const TVA = 0.196

Quant = InputBox("Nombre de produits commandés")


Prix = InputBox("Prix unitaire")
Montant = Prix * Quant * (1 + TVA)
MsgBox ("Le montant dû TTC est de " & Montant & " € ")
End Sub

Traduction Algo 04

Sub Algorithme04()

Dim Prix As Integer


Dim Quantité As Integer
Dim Montant As Single
Dim Remise As Single
Const Taux1 = 0.05
Const Taux2 = 0.1
Const TVA = 0.196

Quantité = InputBox("Nombre de produits commandés")


Prix = InputBox("Prix unitaire")
If (Quantité * Prix) < 2000 Then
Remise = Prix * Quantité * Taux1
Else
Remise = Prix * Quantité * Taux2
End If
Montant = ((Prix * Quantité) - Remise) * (1 + TVA)
MsgBox ("Le montant dû est de " & Montant & " € ")
MsgBox ("Le montant HT de la remise est de " & Remise & " € ")

End Sub

Traduction Algo 10

Sub Algorithme10()

Dim Prix As Integer


Dim Quant As Integer
Dim Montant As Single
Dim N As Integer
Dim I As Integer
Const TVA = 0.196

Fayçal Goudjil
lOMoARcPSD|32927822

N = InputBox("Quel est le nombre de traitement à réaliser ?")


For I = 1 To N
Quant = InputBox("Nombre de produits commandés")
Prix = InputBox("Prix unitaire")
Montant = (Prix * (1 + TVA) * Quant)
MsgBox ("Le montant dû est de " & Montant & " TTC € ")
Next
End Sub

Fayçal Goudjil

Vous aimerez peut-être aussi