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

Informatique de gestion – IO MER L3 – Pierre SOURNAC Informatique de Gestion part III – the macro rises L3 – IO MER

Présentations similaires


Présentation au sujet: "Informatique de gestion – IO MER L3 – Pierre SOURNAC Informatique de Gestion part III – the macro rises L3 – IO MER"— Transcription de la présentation:

1 Informatique de gestion – IO MER L3 – Pierre SOURNAC Informatique de Gestion part III – the macro rises L3 – IO MER Pierre.sournac@gmail.com

2 2 Informatique de gestion – IO MER L3 – Pierre SOURNAC Récapitulatif des cours précedents :  Syntaxe :  Sub / Commentaires / déclaration de variables  Les Structures :  If – Then : ok  For – Next : 4 lignes contenant le numéro de la ligne  Do – loop : idem sur colonne B (while) puis sur D et E (until)  For Each – Next : coloriage Concepts pour la programmation avancée Sub for1() Dim i As Integer i = 1 For i = 1 To 4 Range("A" & i) = i Next i End Sub Sub loop1() Dim i As Integer i = 1 Do Range("B" & i) = i i = i + 1 Loop While i <= 4 End Sub Sub loop2() Dim i As Integer i = 1 Do Range("D" & i & ":E" & i) = i i = i + 1 Loop Until i = 5 'For Each Cell In Range("D1:E" & i) ' Cell.Interior.ColorIndex = i ' i = i + 1 'Next End Sub

3 3 Informatique de gestion – IO MER L3 – Pierre SOURNAC Les fonctions 1)Fonctions :  Un autre type de macros existe. Les fonctions, elles permettent de créer de nouvelles fonctions Excel que l’on pourra utiliser ensuite en plus de celles existantes (comme Somme, Min, Max, …)  La fonction se termine lorsqu’on lui donne une valeur  Démo :  Réaliser les fonctions suivantes :  Eranc : prend comme valeur une somme en Francs et la convertie en Euro  Carré : donne le carré d’une valeur  Il est possible dans une fonction de ne mettre aucun argument, ou plusieurs. tester : Function TVA(prix) TVA = prix * 1.196 End Function Function euro(franc) euro = franc * 6.55957 End Function Function carre(toto) toto = toto * toto End Function Function Pi() Pi = 3.1415926 End Function Function evolution2(val1, val2) evolution2 = ((val2 - val1) / val1) * 100 End Function Sub calcul() Range("A5") = carre(evolution2(Range("A1").Value, Range("B2").Value)) End Sub

4 4 Informatique de gestion – IO MER L3 – Pierre SOURNAC Les Tableaux Un tableau est une variable permettant de stocker plusieurs valeurs  Déclaration :  Dim MonTableau(dimension) [As Type] »taille d’un tableau = nombre d’éléments du tableau. »Les éléments d’un tableau sont indexés de 0 à dimension–1. MonTableau(i) désigne le ième élément du tableau, i devant être compris entre 0 et dimension–1.  Exemples : »Dim TabInt(10) As Integer ‘tableau de 10 entiers »TabInt(0)=12 ‘accès au premier élément du tableau »TabInt(9)=36 ‘accès au dernier élément du tableau  La fonction Array renvoie une variable de type Variant contenant un tableau  La fonction Ubound renvoie la valeur max des index du tableau »UBound(ListeJours) renvoie 6  Mise en application :  Ecrire une macro permettant de vérifier que la chaîne de caractères saisie (inputbox) est bien un jour de la semaine. Dim ListeJours As Variant ListeJours = Array("Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi", "Dimanche") Sub verificationJour() Dim ListeJours As Variant jour = InputBox("saisir un jour :") ListeJours = Array("Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi", "Dimanche") j = 0 For i = 0 To UBound(ListeJours) 'MsgBox ListeJours(i) If ListeJours(i) = jour Then j = 1 End If Next i If j > 0 Then MsgBox "c'est ok" Else MsgBox "KO" End If 'p = Application.Match(jour, ListeJours, 0) ' 'If IsError(p) Then 'MsgBox "KO" 'Else 'MsgBox "OK" 'End If End Sub

5 5 Informatique de gestion – IO MER L3 – Pierre SOURNAC Déboguer L'exécution pas à pas : 1 ière question : le programme passe-t-il bien sur les lignes d'instructions que nous avons écrites, et le fait-il au bon moment ?  une exécution pas à pas. L'exécution ira de ligne en ligne (Touche F8) Le point d'arrêt : Soupçon de souci dans la procédure n°28 ?  le point d'arrêt, judicieusement posé d'un clic de souris dans la marge, juste avant l'endroit où les ennuis arrivent. On lance une exécution normale, qui s'interrompt au point d'arrêt. Et à partir de là, on peut y aller au pas à pas. La souris : En exécution pas à pas il suffit d'amener la souris au-dessus d'une variable, ou d'une expression, pour qu'apparaisse dans un petit cadre jaune, la valeur de cette variable ou de cette expression.


Télécharger ppt "Informatique de gestion – IO MER L3 – Pierre SOURNAC Informatique de Gestion part III – the macro rises L3 – IO MER"

Présentations similaires


Annonces Google