Par Fabrice Pasquier Cours III

Slides:



Advertisements
Présentations similaires
Stockage de données.
Advertisements

Portée des variables VBA & Excel
VBA Les tableaux correction du TD du mardi 11 mars 2008 correction du TD du mardi 11 mars 2008.
Visual Basic for Applications
Page 1 Déboguer un programme Java Jacques Lonchamp.
Cours n°2M2. IST-IE (S. Sidhom) UE 303 Promo. M2 IST-IE 2005/06 Conception dun système d'information multimédia Architecture trois-tiers : PHP/MySQL &
Gestion de FICHIERS.
C.
TP 2 : Nos premières macros
L’enregistreur de macros
Variables et compagnie
VBA / Excel – TP7 La boucle LOOP.
L ’événement CHANGE est détecté par Vba dès qu ’un caractère est saisi ( ou tapé) dans l ’objet TextBox. Par contre l ’événement AFTERUPDATE laisse le.
FLSI602 Génie Informatique et Réseaux
Les TABLEAUX Retour au menu principal.
Cours Visual Basic pour Application
Les requêtes La Requête est une méthode pour afficher les enregistrements qui répondent à des conditions spécifiques. La requête est donc un filtre.
Points importants de la semaine Les commentaires. Les variables. Les instructions conditionnelles. Les instructions itératives (les boucles).
Générique d’initiales.
Plan À faire Retour sur les exercices Gestion d’erreur
Par Fabrice Pasquier Cours IV
44 Contrôle du déroulement du programme. 4-2 Objectifs A la fin de ce cours, vous serez capables de : Utiliser les constructions de prise de décision.
Accès aux programmes externes. L'icône engrenage dans la fenêtre principale permet de définir et de lancer des programmes extérieurs à LOGOS_w.
Programmation en VBA Introduction au language Visual Basic for Applications dans le monde Excel.
CLUB DES UTILISATEURS SAS DE QUÉBEC
Programmation en VBA Introduction au language Visual Basic for Applications dans le monde Excel.
Module 6 : Gestion de données à l'aide du système de fichiers NTFS
Module 6 : Gestion de données à l'aide du système de fichiers NTFS
Les Classes les structures en C (struct) regroupent des variables : structuration de l'analyse mais problèmes de cohérence problèmes de sécurité d'accès.
Points importants de la semaine Les classes et les objets. Les classes dExcel. Les objets dExcel. Les objets de la classe Range.
Programmation multimédia 3
F Copyright © Oracle Corporation, Tous droits réservés. Créer des programmes avec Procedure Builder.
Master 1 Sciences du Sport et du Mouvement Humain
FICHIERS : Définition : Algorithme général:
Séance 4: Plan Test d’auto-évaluation Relâche ou pas? À faire
Le langage ASP Les formulaires avec Request. Les formulaires sont employés pour transmettre des informations saisies par un client à une application Web.
Semaine #1 INF130 par Frédérick Henri.
Points importants de la semaine Les tableaux. Rappel : les tableaux Quest-ce quun tableau ? Réponse : Un tableau est une série déléments de même type.
Chapitre 9 Les sous-programmes.
Les fichiers texte en C++
Université Ibn Zohr Faculté des Sciences Economiques et Sociales Notes de cours VBA E. Belahmidi 2007/2008.
Tableaux, chaînes VBA et Excel
Cour : Microsoft excel FACULTE DES SCIENCES AGADIR
Réaliser par : Moh Fakhri Slama
Paradigmes des Langages de Programmation
Informatique de gestion – IO MER L3 – Pierre SOURNAC Informatique de Gestion part III – the macro rises L3 – IO MER
JavaScript.
Cours No8 La programmation à l’aide d’objets. Contenu 1. Terminologie objet 2. Classe vs Objet 3. Création d’une classe 4. Déclaration d’une variable.
Programmation événementielle
Créer des packages.
Les balises HTML et les objets JavaScript correspondants Objet document L'objet document est important dans la mesure ou il contient tous les objets du.
Modification dynamique
Master 1 SIGLIS Java Lecteur Stéphane Tallard Les erreurs communes en Java.
 Syntaxe du langage PHP
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Tutorat en bio-informatique Le 14 novembre Au programme… Les objets –Propriétés (attributs) –Constructeurs –Méthodes.
Macros Visual Basic sur Excel
Les fichiers 1ère partie
Informatique de Gestion part I – Macro begins
Informatique de Gestion part II – the dark macro
Une aide pour débutant éclairé
QCM VBA.
Initiation aux bases de données et à la programmation événementielle
Scénario Les scénarios permettent de modifier la position, taille … des calques au cours du temps. Son fonctionnement est très proche de celui de Macromedia.
** Flash séance 2 Action script. ** Action Script Ajoute de l’interactivité Permet de contrôler les clips  Langage de programmation orienté objet.
Algorithmes sur Open Office. 1. Ouvrir Visual Basic de Open Office.
FACTORY systemes Module 5 Section 1 Page 5-3 Les scripts de traitement FORMATION INTOUCH 7.0.
FACTORY systemes Module 2 Section 1 Page 2-3 Installation d’Industrial SQL FORMATION InSQL 7.0.
Le Tableur, MS Excel Cours de Dominique Meganck – ICC - IFC Diaporama proposé par FST et adapté par D. Meganck.
Présentation Excel Microsoft Excel est le tableur de la suite bureautique propriétaire « Office System ». Développé pour les plateformes Windows et Macintosh.
Transcription de la présentation:

Par Fabrice Pasquier Cours III VBA et Excel Par Fabrice Pasquier Cours III

Rappels: écriture dans une cellule Plusieurs raccourcis possibles: Sheets(1).Range("A1").Value = 12 Sheets("Feuil1").Range("A1").Value = 12 Range("A1").Value = 12 Worksheets(1). Range("A1").Value = 12 Worksheets("classeur.xls").Range("A1").Value = 12

Rappels: lecture d'une une cellule Dim a As Integer a = Sheets(1).Range("A1").Value Cette syntaxe permet de prendre le contenu de la cellule A1 de la 1ère feuille de calculs et la stocker dans la variable a Equivalence: a = Sheets("Feuil1").Range("A1").Value a =…

Méthodes et propriétés Chaque objet (Range, Worksheet) possède une liste de propriétés et de méthodes Une propriété est plutôt passive Une méthode est active, comme une fonction Pour simplifier: méthode = fonction

Exemples de méthodes et propriétés L'objet Range possède les méthodes suivantes: Activate, AddComment, AdvancedFilter, ApplyNames, …, AutoFit, Clear, ClearContents, CheckSpelling, … Les objets de la collection Sheets possède: Delete, Select (méthodes) Visible, Creator, Count

Intégration… suite On peut maintenant faire des boucles afin de compléter des cellules, ou pour les lire En fonction de certaines valeurs, on effectue telles ou telles opérations

Génération automatique de code Bonne idée pour le formatage des cellules Outils -> Macro -> Nouvelle macro Spécifier le nom du programme (macro) Opérer des actions dans Excel Stopper l'enregisteur Se rendre dans l'éditeur VB pour modifier ou adapter le code généré

Fonctions (function) dans VB Dans un programme, cela peut-être utile de séparer les actions essentielles On crée des fonctions qui sont appelées par la suite dans le programme principal Syntaxe: Public Function nom_fonct (variable As String) As Integer --- instructions End Function Appel: a = nom_fonct ("salut")

Fonctions Exemple: Public Sub prog1() Dim v1 As Integer v1 = somme(3, 5, 7) MsgBox v1 End Sub Public Function somme (op1 As Integer, op2 As Integer, op2 As Integer) As Integer somme = op1 + op2 + op3 End Function

Conversion de type Utilisation d'une variable dans un autre context Une variable définie comme String contient un nombre -> Cint("expression") Souvent implicite CBool(expression) CByte(expression) CCur(expression) CDate(expression) CDbl(expression) CDec(expression) CInt(expression) CLng(expression) CSng(expression) CStr(expression) CVar(expression)

Exemple de conversion Public Sub prog1() Dim special As String, age As Integer, d As Date, val As Double special = "234" age = CInt(special) d = CDate("12.04.2003") val = CDbl("324.1245454") End Sub

Gestion des erreurs (1) En cas d'erreur soupçonnée, on peut préparer Visual Basic à entreprendre une action 2 types de gestion: On Error Resume Next Permet de sauter la ligne qui crée le problème On Error Goto qqpart Permet de sauter à un endroit spécifique du programme On doit arrêter la détection des erreurs par On Error Goto 0

Gestion des erreurs (2) Gestion des erreurs importantes quand interraction avec utilisateur A utiliser le moins possible Ralentit beaucoup le programme A insérer uniquement quand tout le reste fonctionne

Gestion des erreurs (3) Exemple Exemple Public Sub prog1() Dim v1 As Integer, v2 As Integer On Error Goto gesterr1 v1 = InputBox("Enter votre âge:") v2 = v1 + 15 On Error Goto 0 Exit Sub gesterr1: MsgBox "L'âge n'est pas correct.", vbCritical + vbOKOnly End Sub Exemple

Identation des programmes Non obligatoire Rend lisible le programme Identer après: If While, For Function Sub Select Case Public Sub prog1() Dim i As Integer, j As Integer For i = 0 To 9 For j = 0 To 10 MsgBox i Next j Next i End Sub

Commentaires Ajouter le plus de commentaires possibles dans un programme Si possible, petit commentaire à côté de chaque variable déclarée Commenter chaque nouvelle fonction 1 commentaire un moins toutes les 10 lignes Syntaxe: Rem commentaire commentaire, ….. ' commentaire commentaire, …..

Utilisation de l'aide de MS Excel Toutes les fonctions sont bien documentées dans l'aide Visual Basic pour Excel Dans Office 97, s'assurer que l'aide est bien installée. Pas fait pas défaut. Nécessite le CD d'installation On presse sur F1 en ayant sélectionner la fonction qui pose problème

Débogage En déhors des erreurs de syntaxe, il y a les erreurs de programmation plus subtiles Index de tableau Variables non initialisées Comment s'y prendre ? Utiliser le mode pas à pas (Touche F8) Mettre beaucoup de messages (MsgBox) dans le programme, afin de bien vérifier le contenu des variables L'expérience est constructive… Utiliser des points d'arrêt (Touche F9 pour ajouter et enlever)

Démarrage d'un programme après une touche Dans certain cas, il est utile s'associer des programmes à des touches du clavier. On appuie sur la touche 8 et un programme est lancé. Application.OnKey "1", "test2" Démarre le programme test2 lorsque la touche 1 est frappé Application.OnKey "1", "" Ne fait rien lorsqu'on appuie sur la touche 1 Application.OnKey "1" Rend à la touche sa fonction de base

Démarrage d'un programme à l'ouverture du fichier Excel (1) Dans certains cas, il est nécessaire de démarrer un programme quand certaines actions se passent. Ouverture du classeur Excel Changement de feuille de calculs Fermeture du classeur

Démarrage d'un programme à l'ouverture du fichier Excel (2) Double-clique

Démarrage d'un programme à l'ouverture du fichier Excel (3)

Accès au système de fichiers (1) Nous verrons: Lecture et écriture de fichiers texte Autre possibilités: (un peu compliqué !) Lecture et écriture de fichiers binaires En Visual Basic, on peut: Créer des fichiers Compléter des fichiers Effacer des fichiers Lire des fichiers Créer et supprimer des répertoires

Accès au système de fichiers (2) Syntaxe pour la lecture d'un fichier: En lecture No du fichier Dim TextLine as String Open "fichier.txt" For Input As #1 Do While Not EOF(1) Line Input #1, TextLine MsgBox TextLine Loop Close #1 Ouverture du fichier Détection de la fin du fichier Lecture d'une ligne du fichier Fermeture du fichier

Accès au système de fichiers (3) Syntaxe pour l'écriture d'un fichier: Public Sub ecrirefichier() Dim liste As Integer liste = 0 Open "cible.txt" For Output As #1 Do While liste < 100 liste = liste + 1 Print #1, liste Loop Close #1 End Sub En écriture Ecrit une ligne dans le fichier