35
Prof. Adad Mohamed Chérif 2017

Convertisseur Pouce en cm et cm en pixel

Embed Size (px)

Citation preview

Page 1: Convertisseur  Pouce en cm et  cm en pixel

Prof. Adad Mohamed Chérif

2017

Page 2: Convertisseur  Pouce en cm et  cm en pixel

Introduction Ce convertisseur sert à convertir le puce en cm et les pixels en cm et vis-versa . Ce convertisseur est conçu sur la base du langage VBA (Visual Basic ) sous Excel .

Page 3: Convertisseur  Pouce en cm et  cm en pixel

Revenons au programme proprement ditEn lançant le programme à partir du bureau, on obtient le traitement de la feuille 1 d'Excel .

Page 4: Convertisseur  Pouce en cm et  cm en pixel

Appuyons sur le bouton jaune pour accéder au

convertisseur

Affichage en plein écran

Page 5: Convertisseur  Pouce en cm et  cm en pixel

On obtient donc le formulaire suivant (userform)

Soit un exemple

Page 6: Convertisseur  Pouce en cm et  cm en pixel

- 1ère opération On veut convertir 20 pouces en cm. On doit appuyer sur le bouton « Pouce/Cm », on obtient 20 pouces=50,92 cm .Même chose pour Cm/Pouce

- 2ème opération On veut convertir 100 pouces en cmOn doit appuyer sur le bouton « Pixel/Cm », on obtient 100 pixels=2,646 cmMême chose pour Pixel/Cm

Pour faire une autre opération, on appuie sur le bouton « Une autre opération »

Pour quitter l’application, on appuie sur le bouton « Quitter l’application »

Page 7: Convertisseur  Pouce en cm et  cm en pixel

Pour mettre en œuvre ce convertisseur, il convientde réaliser deux étapes importantes :

• La conception du formulaire (Userform en anglais) dans l'éditeur de macro.

• La conception du programme VBA (visual basic)

Page 8: Convertisseur  Pouce en cm et  cm en pixel

D’abord , il faut d’abord lancer l’Excel puis sélectionner:

1. Développeur2. Visual Basic3. Affichage4. Explorateur de projets et

fenêtre de propriétés .

1- La conception de l’userform

Page 9: Convertisseur  Pouce en cm et  cm en pixel

On commence par la création du formulaire (Userform)

Ajouter l’userform:

Le formulaire apparait Boite à outils apparait automatique , sinon on

appuie sur Menu Affichage / Boîte à outils.

L’ userForm sert à créer des boîtes de dialogue personnalisées. Il permet de réaliser des interfaces utilisateurs simples pour la saisie

Nous sommes dans l’éditeur de macro

Page 10: Convertisseur  Pouce en cm et  cm en pixel

Le formulaire: userform

Boite à outils contient un certain nombre de contrôles .

Le userform1 apparait dans la fenêtre « Explorateur de projets »

Page 11: Convertisseur  Pouce en cm et  cm en pixel

Les contrôles standards : Label (Intitulé)

CheckBox (case à cocher)OptionButton (Bouton option)CommandButton (Bouton de commande )TextBox (Zone de texte)ComboBox (Zone de liste modifiable)ListBox (Zone de liste )ScrollBar (Barre de défilement)SpinButton (Toupie)MultiPage (Multiplage)Image (Image)Frame (Cadre)RefEdit (RefEdit)

NB: Il est plus pratique d’utiliser les termes en anglais car le langage VBA est aussi en anglais

Label

CommandButton

TextBox

Frame

Image

ComboBox

ListBox

ScrollBarSpinButton

MultiPage

Page 12: Convertisseur  Pouce en cm et  cm en pixel

On peut attribuer un nom précis à l’userform . Il suffit , dans la fenêtre « Propriété », écrire dans la proprité champ « Caption » Formulaire01

Caption spécifie le texte affiché dans la barre de titre. D’une

manière générale , la propriété

caption permet à l’utilisateur de

modifier le titre du formulaire,

des boutons, des labels etc.

Page 13: Convertisseur  Pouce en cm et  cm en pixel

Le userform de notre cas doit avoir cette forme. Passant maintenant à sa conception.

Page 14: Convertisseur  Pouce en cm et  cm en pixel

Agrandissant le formulaire en le glissant la souris vers le bas et à droite le sommet de l’angle B

A partir de B , il est possible d’agrandir l’userform à l’aide de la souris

Page 15: Convertisseur  Pouce en cm et  cm en pixel

Il est possible de changer la couleur de l’userform : Fenêtre de propriété ---- Backcolor –palette (Orange)

Couleur orange de l’userform

Page 16: Convertisseur  Pouce en cm et  cm en pixel

Le textBox est le champ où on saisit les donnée alphanumériques ,

Pour qu'il apparaisse, on appuie sur le contrôle TextBoxOn peut ajuster ses dimensions selon le cas .

Te terme « TextBox » apparait dans la fenêtre des propriétés.Il est possible de le modifier , il suffit de pointer le curseur sur lui champ.

Page 17: Convertisseur  Pouce en cm et  cm en pixel

Dans label1 (intitulé) , on saisie un nom qui qualifie le textBox1: ici on a écrit« Saisir un nom au dessus ». On peut changer le style, la taille et la police .Pourse faire, dans la « fenêtre de propriété » , allez à « Font » .

TextBox1Label1

Page 18: Convertisseur  Pouce en cm et  cm en pixel

On ajoute aussi sur le userform, le contrôle « Bouton » pour exécuter le programme. On va renommer le bouton , exemple: Pouce/Cm .Dans « Caption » on écrit « Pouce/Cm »

1

2

Page 19: Convertisseur  Pouce en cm et  cm en pixel

Pour mettre le titre « Convertisseur » dans le « Cadre »

Pour choisir la couleur bleue (ForColor) et police 12 (Font)

Page 20: Convertisseur  Pouce en cm et  cm en pixel

On continue à mettre des informations (Pouce en Cm/Cm en Pouce , Cm en Pixel/ Pixel en Cm) à l’intérieur du cadre.

Label1 --- Caption ( Pouce en Cm/Cm en Pouce )--- Caption ( Label2---Caption = Cm en Pixel/ Pixel en Cm) Couleur: ForeColor

Le choix de la couleur bleue

Maintenant vous serez capable de réaliser aisément tout l’userform.

Page 21: Convertisseur  Pouce en cm et  cm en pixel

Après avoir terminer la réalisation complète de l’userform sous la forme suivante,

il faut le sauvegarder sous fichier Excel « XLSM » et en prenant en charge la « MACRO »

Page 22: Convertisseur  Pouce en cm et  cm en pixel

RécapitulatifNous avons• 4 TextBox 7 Boutons 7 Labels 1 Cadre dans lequel il y a 2 autres labels.

Boutons Boutons

TextBox TextBox

Cadre

Labels Labels

Page 23: Convertisseur  Pouce en cm et  cm en pixel

Passons à la 2ème étape, le programme VBA lui même .

Principe de fonctionnement

Ce programme est constitué de 7 subroutines (Procédures):

1ère subroutine

Conversion Pouce en Cm

2ème subroutine

Conversion Cm en Pouce

3ème subroutine

Convertir Pixel en cm

4ème subroutine

Convertir cm en Pixel

5ème subroutine

Une autre opération: remise à zéro

6ème subroutine

Une autre opération: une Remise à zéro

7ème subroutine

Quitter userform

EN PLUS Une autre subroutine pour

accéder directement à l'userform.

Subroutine « Affichage en plein écran » dès l'accès au fichier.

2- Réalisation du programme VBA (Visual Basic)

Page 24: Convertisseur  Pouce en cm et  cm en pixel

Durant la réalisation du programme proprement dit , il est utile de rappeler que qu’il est nécessaire de faire un va-et-vient permanant entre l’userform et l’éditeur de des macros (programmes ou procédures) .

Appuyez sur Pouce/Cm , c’est le CommandButton6

Page 25: Convertisseur  Pouce en cm et  cm en pixel

'1ère subroutine'***************

'Conversion Pouce en Cm, agir sur le bouton CommandButton6Private Sub CommandButton6_Click()Pouce = TextBox3 'Là où on saisit les nombresIf Not IsNumeric(TextBox3.Text) Then

MsgBox " SVP, Saisissez un nombre ", vbOnly + vbInformation, "Input Error" 'vbOnly " ok ", vbInformation :un signal sonoreExit Sub

ElseIf pouce <> "" Then

cm = pouce * 2.546TextBox4 = cmElse

End IfEnd IfEnd Sub

On va expliquer uniquement la 1ère subroutine ou (procédure) car la 2ème, la3ème et la 4ème sont similaires à la 1ère.

Page 26: Convertisseur  Pouce en cm et  cm en pixel

La procédure commence parl'instruction Private Sub et seterminent par l'instruction EndSub. Le code VBA doit être écrit

entre Sub et End Sub. Lesparenthèses sont obligatoires .

On saisie le nombre en Poucedans TextBox3

SI la valeur entre parenthèses (le

nombre saisi) n’est pas numérique(donc si condition vraie) alorson exécute les instructionsplacées après THEN:

« SVP, Saisissez un nombre » apparaitdans la boite de dialogue de MsgBoxavec un signal sonore .

VbOnly = boite de dialgue avec OK etvbInformation = signal sonore

« Input Error » message apparait dans letitre de la boite de dialogue.

ExitSub fin de la procédure

Else (si la valeur entre parenthèsesest un nombre) on continue laprocédure .

'Conversion Pouce en Cm, agir sur le bouton CommandButton6Private Sub CommandButton6_Click()Pouce = TextBox3 'Là où on saisit les nombres

If Not IsNumeric(TextBox3.Text) ThenMsgBox " SVP, Saisissez un nombre ", vbOnly +

vbInformation, "Input Error" 'vbOnly " ok ", vbInformation :un signal sonore

Exit SubElse

If pouce <> "" Thencm = pouce * 2.546TextBox4 = cmElse

End IfEnd If

End Sub

Une 2ème condition (If……Then) : si un nombreest saisi , on procède à la conversion du pouceen cm et on place le résultat dans TexteBox4. sirien n’a été saisi . C’est la fin du programme EndSub

Page 27: Convertisseur  Pouce en cm et  cm en pixel

Saisie d’une chaine de caractères (string) et non un nombre (integer) dans TextBox3

Une boite dialogue précisant qu’il y a erreur de saisie

Erreurs de saisie

Si aucun nombre est saisi dans le Textbox 3 ou TextBox1 et on appuie sur le bouton Pouce /cm ou Cm/Pouce et aussi Pixel/Cmou Cm/Pixel , la boite de dialogue nous demande de saisir un nombre. Avec « Input error » dans le titre de la boite de dialogue.

TextBox1TextBox3

Page 28: Convertisseur  Pouce en cm et  cm en pixel

'5ème subroutine'***************' "Une autre opération= Bouton CommandButton4 " qui est une Remise à zéroPrivate Sub CommandButton4_Click()TextBox3 = ""TextBox4 = ""TextBox3.SetFocus 'Positionnement du curseur dans TextBox3End Sub

'6ème subroutine'***************'"Une autre opération= Bouton CommandButton5 " qui aussi une Remise à zéroPrivate Sub CommandButton5_Click()TextBox1 = ""TextBox2 = ""TextBox1.SetFocus 'Positionnement du curseur dans TextBox1End Sub

'7ème subroutine'***************' Quitter l'userformPrivate Sub CommandButton3_Click()Unload Me 'Me = userformEnd Sub

La 5ème subroutine et 6ème

subroutine sont des procédures « de remise à zéro ».Sur le userform il y a deux boutons de remise à zéro appelés « Une autre opération » En termes de VBA, ces boutons sont CommandButton4 et CommandButton5

Prenons le cas de la 5ème subroutine. En appuyant sur CommandButton4TextBox3 s et TextBox4 se vident grâce à

la présence de la chaîne ""Ensuite, le curseur est positionné dans

TextBox3 automatiquement grâce à la propriété SetFocus

Pour quitter l’userform , on appuie sur le bouton « Quitter l’application » , en vbac’est le CommandButton3 qui est validé . Unload Me signifie quitter l’userform .

Page 29: Convertisseur  Pouce en cm et  cm en pixel

Une autre subroutine pour accéder directement à l'userform , située dansl'éditeur de Code de Feuil1.

Private Sub cmdaccès_Click()UserForm1.ShowEnd Sub

Appuyez sur ce bouton dans la feuille 1 pour accéder directement à l’userform

l'éditeur de Code de Feuil1

Page 30: Convertisseur  Pouce en cm et  cm en pixel

Pour le bouton «Appuyer pour accéder à l’userform »

D’abord exécuter l’userform

Puis dans la barre de menu , sélectionnez « Développeur »

Activez « Le mode de création »

Appuyez sur « Insérer des contrôles »

on choisit le contrôle bouton Puis on crée le bouton

« commandButton1 »Renommer le

« commandbutton1 » en «Appuyer pour accéder à l’userform »

Page 31: Convertisseur  Pouce en cm et  cm en pixel

Renommer le bouton commandbutton1

Page 32: Convertisseur  Pouce en cm et  cm en pixel

Une fois le commandbutton1 est renommé, on désactive le mode de création. En appuyant sur ce bouton , appelé désormais, «Appuyer pour accéder à l’userform » , l’éditeur de codes apparait où on saisie le code correspondant . On renomme « Commandbutton1 » en cmdaccès en se référant au champ « Name »

Signifie , l’userform apparait dès qu’on appuie sur ce bouton qui se trouve dans la feuille1.

Page 33: Convertisseur  Pouce en cm et  cm en pixel

Un Code pour afficher automatiquement "en plein écran" dès l'accès à notre fichier Excel , il est dans l’éditeur de code de ThisWorkbook.

Private Sub Workbook_Activate()Application.DisplayFullScreen = TrueEnd Sub

Private Sub Workbook_Deactivate()Application.DisplayFullScreen = FalseEnd Sub

ThisWorkbook.

l’éditeur de code de ThisWorkbook où on place le code VBA « Affichage en plein écran »

Page 34: Convertisseur  Pouce en cm et  cm en pixel

Université d’Oum El BouaghiFaculté des sciences de la terre et de l’architecture

Page 35: Convertisseur  Pouce en cm et  cm en pixel