Td corrigé Exercice 5.2 (sous forme de programme) pdf

Exercice 5.2 (sous forme de programme)

Programmation en Visual Basic sous Word. Il suffit d'utiliser l'outil MACRO de Word qui utilise la programmation en VB pour réaliser des programmes.




part of the document



Programmation en Visual Basic sous Word
Il suffit d’utiliser l’outil MACRO de Word qui utilise la programmation en VB pour réaliser des programmes.

Nous allons afficher une petite boîte de dialogue comme ceci :

Ouvrir Word, (puis nouveau document, s’il n’y a pas de page)
Faites Outils/Macros/ Visual Basic Editor
Dans la partie de gauche, vous devriez voir ceci :

INCLUDEPICTURE "../../Tset/algorithme/Votre%20toute%20première%20macroword_fichiers/premieremacroword01.gif" \* MERGEFORMAT \d"Si ce n'est pas le cas, faites Affichage/Explorateur de projets

Cliquez avec le bouton droit sur Project (Document1), et choisissez Insertion/Module.
Vous avez maintenant sur toute la partie de droite un éditeur de texte (une page blanche dans lquelle vous pouvez écrire). Word à également créé dans la partie de gauche Modules et Module1
Ecrivez dans cette partie de droite: Sub AfficheMessage
Appuyez sur ENTER. Normalement, Word a complété votre texte comme ceci : Sub AfficheMessage() End Sub
Complétez le code en écrivant vous même
Sub AfficheMessage() MsgBox "Ca Marche"
End Sub
La macro est maintenant écrite. Cliquez quelque part entre Sub AfficheMessage et End Sub, et appuyez sur la touche F5. Le message devrait apparaître, comme ceci :

INCLUDEPICTURE "../../Tset/algorithme/Votre%20toute%20première%20macroword_fichiers/premieremacroword02.gif" \* MERGEFORMAT \d"
Et voilà... vous avez écrit vous même votre première macro, et exécuté ! Félicitations ! Vous avez donc appris plusieurs choses :
INCLUDEPICTURE "../../Tset/algorithme/Votre%20toute%20première%20macroword_fichiers/motcleculture.gif" \* MERGEFORMAT \d"
MsgBox permet d'afficher des messages
Le texte affiché avec MsgBox est écrit entre guillemets
Les macros commencent par Sub QuelqueChose() et se terminent par End Sub
On peut exécuter les macros directement depuis l'environnement VBA avec la touche F5

Exercice 5.2 (sous forme de programme)
- on demande un nombre compris entre 10 et 20, jusqu’à ce que la réponse convienne. En cas de réponse supérieure à 20, on fera apparaître un message : « Plus petit ! », et inversement, « Plus grand ! » si le nombre est inférieur à 10.



Programme à écrire :

Sub AfficheMessage()

Dim valeur As Byte
MsgBox " exercice 5.2 "

Do Until (valeur > 10) And (valeur < 20)
valeur = InputBox(" entrer un nombre compris entre 10 et 20")
If valeur < 10 Then MsgBox "entrer un nombre plus grand que 10"
If valeur > 20 Then MsgBox "entrer un nombre plus petit que 20"
Loop

MsgBox " la valeur entrée est :" & valeur

End Sub
 EMBED Word.Picture.8 


Voici les fenêtres qui devront apparaître.



Exercice 5.3
Ecrire le programme qui demande un nombre de départ, et qui ensuite écrit la table de multiplication de ce nombre, présentée comme suit (cas où l'utilisateur entre le nombre 7) :Table de 7 :
7 x 1 = 7
7 x 2 = 14 7 x 3 = 21 … 7 x 10 = 70

Exercice 5.4
Ecrire un programme qui demande un nombre de départ, et qui calcule sa factorielle et qui l’affiche. NB : la factorielle de 8, notée 8 ! vaut 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8




Correction 5.3


Sub affich()
Dim x As Integer

valeur = InputBox("entrez un nombre")

For x = 1 To 10
MsgBox valeur & " x " & x & " = " & valeur * x
Next x


End Sub

















Correction 5.4


Sub affich()
Dim resu As Double
Dim x As Integer

resu = 1 ' initialisation du résultat

valeur = InputBox("entrez un nombre")
For x = 1 To valeur
resu = resu * x
Next x

MsgBox " le factoriel de " & valeur & " = " & resu

End Sub












Remarque : Il faut absolument initialiser la variable résultat à 1
Le résultat étant vite très grand il faut une variable de type double voir plus










 FILENAME VB sous word macro 1.doc Page  PAGE 3 /  NUMPAGES 3  DATE \@ "dd/MM/yy" 17/10/04