La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

UE2 - M22 Licence acoustique

Présentations similaires


Présentation au sujet: "UE2 - M22 Licence acoustique"— Transcription de la présentation:

1 UE2 - M22 Licence acoustique
03/10/2017 UE2 - M22 Licence acoustique Le langage VBA Pour EXCEL Formation EAE – Année universitaire

2 chiffres EXCEL Format d’affichage Contenu des cellules
décimal Financier Date heure Contenu des cellules nombre Chaînes formules repérage des cellules Absolu $B$6 Relatif B6 (L6C2 R6C2) Mixte $B6 B$6 Par nom mesure3

3 Variables calculées EXCEL Recalcul des formules
automatique manuel Outils > options > onglet calcul Formule de calcul associée à la cellule

4 EXCEL graphiques Choix important de type De courbes

5 mise en forme conditionnelle
EXCEL mise en forme conditionnelle

6 Un bouton pour lancer le traitement ::
Exemple 1 APPLICATION On veut rechercher le maximum dans une série de 3 chiffres 1ère méthode : saisir les valeurs DIRECTEMENT dans la feuille Un bouton pour lancer le traitement :: Quand on clique sur le bouton, la procédure de traitement nommée rechmax() est exécutée Le traitement est écrit dans la fenêtre de code (ALT F11)

7 Exemple 1 Sub rechmax() On déclare les variables
Dim val1 As Byte, val2 As Byte, val3 As Byte Dim max val1 = Cells(1, 1).Value val2 = Cells(2, 1).Value val3 = Cells(3, 1).Value If (val1 > val2) Then If val1 > val3 Then max = val1 Else max = val3 End If If max2 > val3 Then max = val2 Cells(5, 1).Value = max End Sub On déclare les variables On vient lire les valeurs dans les cellules On traite l'algorithme de l'éxo 1 du TD1 On écrit le résultat dans la cellule ligne 5,colonne 1 (A5)

8 Exemple 2 Les données sont saisies dans une fenêtre
La fenêtre est ouverte en cliquant sur le bouton INTERFACE GRAPHIQUE OBJET fenêtre OBJET zone de texte OBJETS boutons OBJETS numériques On donne des noms aux objets txtA,txtB et txtC pour les zones de saisie des 3 chiffres cmdCalcul,cmdQuitter pour les 2 boutons lblResultat pour l'affichage du résultat

9 Exemple 2 Private Sub cmdCalcul_Click()
Dim val1 As Byte, val2 As Byte, val3 As Byte Dim max val1 = txtA.Value val2 = txtB.Value val3 = txtC.Value If (val1 > val2) Then If val1 > val3 Then max = val1 Else max = val3 End If If max2 > val3 Then max = val2 lblResultat.Caption = "le max=" & max End Sub On vient lire les valeurs écrites dans les zones de texte On écrit le résultat dans la zone de texte lblresultat

10 Exemple 2 APPLICATION Les données sont saisies dans une fenêtre
La fenêtre est ouverte en cliquant sur le bouton INTERFACE GRAPHIQUE OBJET fenêtre OBJET zone de texte OBJETS boutons OBJETS numériques

11 Types et valeurs Type Taille (octets) Plage byte 1 0 à 255
boolean 2 true ou false integer à Long  147 483 648 à 2 147 483 647 single 4 nombre réel double 8 nombre réel string 10 octets + longueur de la chaîne Variant 16 Pour s'obliger à déclarer les variables, on écrira : Option explicit en début de programme

12 exemples de variables Variables GLOBALES (visibles partout !!!)
' Déclaration de variables globales - visibles dans tout le programme Dim rayon As Single ' Déclaration de réel Dim i As Integer, j as Integer 'Déclaration d'entier Dim t As String * ' Déclaration de caractère Dim octet ' Déclaration d'un octet Dim c ' long Sub test() Dim d As Byte Dim e As Integer rayon = 10.14 i = 2 j = 3 t = "A" 't=65 Code Ascii de A octet = 129 ' On peut aller au dessus de +127 End Sub Variables GLOBALES (visibles partout !!!) Variables LOCALES (visibles uniquement dans la fonction !!!)

13 tableau Un tableau est une association des variables de même type SRAM
Dim machin(4) as integer 2 octets (int) Machin(0) $0100 Machin(1) $0102 Machin(2) $0104 Machin(3) $0106 L'indice de départ est 0 par défaut On peut modifier cette configuration avec le paramètre Option Base

14 tableau Dim t As Variant Dim t2(3) As String t2(0) = "bonjour"
t2(1) = "ca" t2(2) = " va?" t = Array(10, 20, 30)

15 Les procédures Sub nom_de_la_proc() instructions End Sub
Routines sans paramètre d'entrée et de sortie Sub nom_de_la_proc() instructions End Sub Sub affiche() Dim msg As String msg = "bonjour !!" MsgBox msg End Sub ' pour utiliser la procédure affiche Routines avec paramètres d'entrée et sans paramètre de sortie Sub nom_de_la_proc(types nom_des_paramètres) instructions End Sub Sub affiche(msg As String) MsgBox msg End Sub ' pour utiliser la procédure msg = "bonjour !!" affiche (msg)

16 Les fonctions Function nom_de_la_fct() as instruction 1 instructions
Routines sans paramètres d'entrée et un paramètre de sortie Function nom_de_la_fct() as instruction 1 instructions nom_de_la_fct=resultat End function Function affiche() As String Dim msg As String msg = "bonjour, ca va?" affiche = msg End Function ' pour utiliser la fonction MsgBox affiche Routines avec paramètres d'entrée et un paramètre de sortie Function nom_de_la_fct(types nom_des_param) as instruction 1; instruction n; return valeur; End function Function somme(a As Byte, b As Byte) As Integer somme = a + b End Function ' pour utiliser la fonction Calcul=somme(10,20)

17 Les opérateurs LOGIQUE If (a and b) …... c=a and b
Ces opérateurs sont utilisés pour les tests conditionnels. Le résultat est true ou false. If (a and b) …... c=a and b c=1 si a<>0 et b<>0 ET logique OU logique c=a or b c=1 si a ou b sont non nuls NON logique If (not a) …. Le test est VRAI si a est FAUX (a=0) COMPARAISON

18 Boucles POUR TANT QUE y=1*4 x=3 y=4*3 x=2 y=12*2 x=1 y=24*1 x=0
Pour indice Allant de valeur1 à valeur2 faire Actions Fin pour Dim x As Byte for x = 0 to 10 next TANT QUE y=1*4 x=3 x=4 : y=1 ' calcule la factorielle de x while (x>0) y=y*x : x=x-1 End while Tant que condition faire Actions Fin Tant que y=4*3 x=2 y=12*2 x=1 y=24*1 x=0 Do instructions Loop while (test) Do instructions Loop until (test) Si test VRAI on continue la boucle Si test VRAI on sort de la boucle

19 Test simple SI SELON CAS Si condition vraie Alors Actions 1 Sinon
Fin si for x = 1 to 10 if ( not ( x mod 2 )) msgbox x & " est pair" else msgbox x & " est impair" End if next SELON CAS Selon expression E Cas valeur1 Actions 1 Cas valeur2 Actions B Cas valeurN Actions N Cas sinon Action Défaut Fin Selon N=8 ' Initialise la variable. Select Case N ' Évalue N Case 1 To 5 ' N est compris entre 1 et 5 inclus. Debug.Print "Entre 1 et 5" Case 6, 7, 8 ' N est compris entre 6 et 8. Debug.Print "Entre 6 et 8" Case 9 To 10 ' N entre 9 ou 10. Debug.Print "Supérieur à 8" Case Else ' Autres valeurs. Debug.Print "Non compris entre 1 et 10" End Select

20 Les structures Dans un tableau, tous les constituants sont du même type. Ce n'est pas le cas des structures, qui sont des variables composées de plusieurs variables de types différents. Chaque champ n'est plus désigné par un numéro comme dans un tableau, mais par un identificateur.

21 Les structures Type fiche nom As String * 20 Nom de la structure
/* Structure globale dans la mémoire VIVE*/ Type fiche nom As String * 20 prenom As String * 20 age As Byte End Type Nom de la structure Dim etudiant as fiche Etudiant.nom=« toto » Etudiant.prenom=« titi » Etudiant.age=50 Dim etud(20) as fiche etud(0).nom="AIMAR" etud(0).prenom="Jean" etud(0).age=10


Télécharger ppt "UE2 - M22 Licence acoustique"

Présentations similaires


Annonces Google