Tableaux, chaînes VBA et Excel. Par Fabrice Pasquier Cours II



Documents pareils
Programmation VBA/Excel. Programmation VBA. Pierre BONNET. Masters SMaRT & GSI - Supervision Industrielle P. Bonnet

Comment créer et utiliser une fonction

Initiation à VBA pour Excel. Philippe Bernard Ingénierie Economique et Financière Université Paris-Dauphine

Formation VBA 3 Interagir

Algorithmique et programmation : les bases (VBA) Corrigé

MAÎTRISE DE L ENVIRONNEMENT WINDOWS VISTA

TP 1. Prise en main du langage Python

TD3 - Facturation avec archivage automatisé

Excel. Identification. Informations sur vos besoins et objectifs. Notions fondamentales. Fiche de validation des besoins en formation Bureautique

Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques

Évaluation des compétences. Identification du contenu des évaluations. Septembre 2014

Date M.P Libellé Catégorie S.Catégorie Crédit Débit Solde S.B

INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX

TABLEAU CROISE DYNAMIQUE

PRÉSENTÉ PAR : NOVEMBRE 2007

EXCEL TUTORIEL 2012/2013

1 TD 2 : Construction d'une chier Acrobat et envoi par

Activité 11 : Nuage de points ou diagramme de dispersion

Préparation à l examen EFA en Macro

Table des matières A. Introduction... 4 B. Principes généraux... 5 C. Exemple de formule (à réaliser) :... 7 D. Exercice pour réaliser une facture

Automatisation d'une Facture 4. Liste Déroulante Remises Case à cocher Calculs

Formation Excel, Niveau initiation, module 1 DUREE DE LA FORMATION OBJECTIFS DE LA FORMATION

Formation Excel. Introduction Les Bases du Logiciel Le comportement des cellules. Calculs élaborés. Les feuilles de calculs élaborées

Travaux Pratiques de Commande par ordinateur 1 TRAVAUX PRATIQUES

Excel 2007 Niveau 3 Page 1

Perfectionnement Excel 2007


Débuter avec Excel. Excel

EXCEL PERFECTIONNEMENT CALCULS AVANCES

Caisses Sociales de Monaco - Déclarations de Salaires DIDACTICIEL. Version 3.2

LES TYPES DE DONNÉES DU LANGAGE PASCAL

COURS DE MS EXCEL 2010

Compléments de documentation Scilab : affichage de texte et formatage de nombres

Créer une base de données

La Clé informatique. Formation Excel XP Aide-mémoire

Créer le schéma relationnel d une base de données ACCESS

Université Ibn Zohr Excel Résume de cours

L emprunt indivis - généralités

Styler un document sous OpenOffice 4.0

Formations 2015 Bureautique

Infolettre #18 : Les graphiques avec Excel 2010

1 CRÉER UN TABLEAU. IADE Outils et Méthodes de gestion de l information

1. Introduction Création d'une macro autonome Exécuter la macro pas à pas Modifier une macro... 5

Parcours FOAD Formation EXCEL 2010

SOMMAIRE. 1. Préambule Le calendrier Trajectoire d un objet lancé Régression linéaire...9

Présentation du langage et premières fonctions

Guide de formation avec cas pratiques. Programmation. Philippe Moreau Patrick Morié. Daniel-Jean David

Se Perfectionner à Excel

UTILISATIONS D'EXCEL POUR LES SCIENTIFIQUES.

RACCOURCIS CLAVIERS. DEFINITION : Une «combinaison de touches» est un appui simultané sur plusieurs touches.

Programmation Objet - Cours II

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Bernard Lecomte. Débuter avec HTML

1. Structure d'un programme FORTRAN 95

Microsoft Excel. Tableur

Manuel Utilisateur Version 1.6 Décembre 2001

VOCABULAIRE LIÉ AUX ORDINATEURS ET À INTERNET

Programme détaillé. LES TABLEAUX DE BORD Formation en présentiel (21 h) accompagnée d un parcours e-learning Excel (5 h)

Mon aide mémoire traitement de texte (Microsoft Word)

Créer vos données sources avec OpenOffice, adieu Excel

Initiation à la programmation en Python

Le cas «BOURSE» annexe

EXCEL PERFECTIONNEMENT SERVICE INFORMATIQUE. Version /11/05

Excel 2010 Intermediaire

Introduction à Excel Les bases fondamentales pour l utilisation de Excel John Keisen. Juin 2012

IMPORTATION, CRÉATION, MANIPULATION, EXPORTATION DE DONNÉES STATISTIQUES

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Programmation VBA. Excel Daniel-Jean David. et Groupe Eyrolles, 2014, ISBN :

Premiers Pas avec OneNote 2013

Excel avancé. Frédéric Gava (MCF)

Le cas «BOURSE» annexe

Manuel de mise en page de l intérieur de votre ouvrage

Création d'une interface graphique

NOS FORMATIONS EN BUREAUTIQUE

POUR ALLER UN PEU PLUS LOIN SUR UN TABLEUR. Version EXCEL

Microsoft Excel Présentation du tableur Excel

Avant-propos FICHES PRATIQUES EXERCICES DE PRISE EN MAIN CAS PRATIQUES

Module 1 : Tableau de bord Excel * 2010 incl.*

LE TABLEUR OPENOFFICE CALC : CONTRÔLES DE FORMULAIRES ACCÈS AUX BASES DE DONNÉES

Auto-Entreprise : Activités : Eric SOTY - Siret n Formation Bureautique, continue d'adultes. Tél : Fax :

Programmation Visual Basic. Visite guidée d'un programme Visual Basic 6.0

Suivi de la formation

La formation informatique en ligne INFOS COURS - FORUM SUPPORT DE COURS WOR MICROSOFT

GUIDE Excel (version débutante) Version 2013

Excel 2007 Utilisation Avancée

Le langage C. Séance n 4

ACCUEIL / Introduction. Introduction. Présentation de StarBoard Software Éléments de l écran Guide de démarrage rapide

TABLEAU CROISE DYNAMIQUE

Création du projet : 1 sur 13

Visual Basic for Applications

Cours d algorithmique pour la classe de 2nde

Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS

MODE D EMPLOI DU MODULE D E-COMMERCE

Publipostage avec Calc

Inspiration 7.5. Brève description d Inspiration. Avantages d Inspiration. Inconvénients d Inspiration

LES DECIMALES DE π BERNARD EGGER

les Formulaires / Sous-Formulaires Présentation Créer un formulaire à partir d une table...3

Transcription:

Tableaux, chaînes VBA et Excel Par Fabrice Pasquier Cours II

Rappels - Environnement Ouverture de l environnement de programmation: Outils -> Macro -> Visual Basic Editor Création d un module Insertion -> Module

Rappels Boutons, Faire apparaître la barre d outils des formulaires Affichage -> Barres d outils -> Formulaires Dessiner un bouton L associer à une macro (=programme)

Tableaux et vecteurs (1) But: stocker les données de manière structurée Exemple: on veut stocker les mois de l'année (Janvier, Février, Mars, ) Exemple: On veut travailler sur le contenu des 10 premières valeurs d'une ligne de feuille Excel.

Tableaux et vecteurs (2) Deux déclarations possibles: 1. Dim tabl1(0 To 12) As Integer On prévoit 13 emplacements pour des entiers tabl1(0) = 14 tabl1(2) = 17 2. Dim tabl2 As Variant Souvent lorsqu'on utilise la fonction Array tabl2 = Array("Janvier", "Février", "Mars")

Tableaux et vecteurs (3) Structure pour afficher le contenu:! "! Ou #$%! "!

Tableaux et vecteurs (4) Les tableaux peuvent avoir plusieurs dimensions: Dim montant(1 To 12, 1 To 31) As Integer montant(1, 2) = 1200 Montant correspondant au 2 janvier

Tableaux et vecteurs (5) Fonctions sur les tableaux: LBound: plus petit index du tableau UBound: plus grand index Array( ): retourne un tabeau (doit être affecté à un Variant) Erase efface le tableau de la mémoire

Tableaux et vecteurs Exemples des fonctions de tableaux & '($) '(! "! * '+' *,'

Fonctions sur les chaînes de caractères (1) Concaténation: & ("fabrice" & " pasquier") Construction périodique: String(20, "x") Répète 20 fois le caractère 'x' Space(10): génère une séquence de 10 espaces Eclatement: Split(chaine, séparateur) s = Split("c:\windows\system32\driver.dll", "\") s doit être de type Variant!+*%

Fonctions sur les chaînes de caractères (2) Longueur: Len(chaîne) Positionnement: InStr(chaîne, caractère) pos = InStr("Il fait beau", "b") retourne 9 MAJ, min: LCase("BonjouR") retourne "bonjour" UCase("BonjouR") retourne "BONJOUR" Sélection de caractères: Mid, Left, Right Left("Fabrice", 3) retourne "Fab" Right("Fabrice", 3) retourne "ice" Mid("Fabrice", 5, 2) retourne "ic"

Formatage des chaînes La fonction Format( ) retourne une chaîne de caractères formatée en fonction des paramètres Même fonctionnement que dans Excel Format(12121.13, "##'###.00") retourne 12'121.13 Format("salut", "<") UCase("salut") Format(Date, "yy/mmmm/dd") La fonction Date retourne la date actuelle. Celle-ci doit être formatée avant affichage dans une boîte de dialogue, sinon elle sera affichée sous la forme spécifée dans les options régionales (dd/mm/yy)

Fonctions mathématiques Valeur absolue: Abs(-9) retourne 9 Signe: Sgn(-18) retourne 1 (ou 0 ou 1) Troncation: Int(13.12) retourne 13 Int(-14.8) retourne 15 Tronque à l'entier inférieur le plus proche Partie entière: Fix(-18.3) = -18 Fix(18.3) = 18 Enlève la partie décimale

Fonctions mathématiques Sqr, Exp, Log Sqr(4) retourne 2, Exp(5) retourne 148.413, Log(9) retourne 2.197224 (en base e) Nombres aléatoires Rnd retourne un nombre aléatoire entre 0 (compris) et 1 (non compris) a = Rnd a peut valeur 0.12131441 Int((b a + 1) * Rnd + a) retourne un nombre aléatoire entier entre a et b Sin, Cos, Tan, Atn (arc-tangente)

Fonctions de dates Date retourne la date actuelle Time retourne l'heure courante Date et Time peuvent retourner des String DateSerial retourne une valeur unique pour une date donnée, sous forme Variant dv1 = DateSerial(2003, 4, 22) dv2 = DateSerial(1928, 5, 3) dv1 dv2 représente le nombre de jours entre ces deux dates Day, Month et Year retourne respectivement le jour, le mois et l'année d'une date. Year(Date) retourne 2003 cette année (en entier)

Activités dans Excel But de la programmation dans Excel: interragir avec les feuilles de calculs Nécessite une brève introduction aux objets MS Office Structures de base toujours les mêmes

Structure des objets Excel

Structure des classeurs Chaque objet appartient à une collection. Cette collection est faite d'une multitude d'objets. La collection Worksheets (ensemble des classeurs) se composent d'un ensemble de Worksheet. Chacun des Workbook contient à son tour une collection de Worksheet (ou Sheet). Ces collections s'appellent Worksheets ou Sheets.

Vision imagée de la hierarchie d'objets!* -.. -../ -..0 1 1 1% 10 1/ 1% 10 1/

Hiérarchie en Visual Basic (1) On écrit une hiérarchie en VB avec des. (point) On se réfère à la cellule A1 de la 1ère feuille de calculs: Excel.Workbooks(1).Sheets(1).Cells(1,1) Noter que l'index 1 est le plus petit. Pas de 0. Workbooks(1) => on prend le 1er élément de la collection des Workbook. Des simplifications d'écrire sont possibles Sheets(1).Cells(1,1) est équivalent

Hiérarchie en Visual Basic (2) Cells est également une collection. Chaque élément de la collection est une cellule, indexée matriciellement. Cells(3, 4) est le cellule (Cell) "C4". Cependant, l'objet Cell n'existe pas vraiment en Excel, il est remplacé par Range Chaque Range a de nombreuses propriétés, comme la couleur ou la police

Hiérarchie en Visual Basic (3) Ecrire dans la cellule A1: Excel.Workbooks(1).Sheets(1).Cells(1, 1).Value = "salut" Excel.Workbooks(1).Sheets(1).Range("A1").Value = "salut" Sheets(1).Range("A1").Value = "salut" Range("A1").Value = "salut" (il faut être sur que la 1ère feuille de calculs est sélectionnée dans Excel ) Les 2 dernières solutions sont des simplifications d'écriture, mais évidemment mois précises

Hiérarchie en Visual Basic (4) Lorsque l'on tape Range("a1"). Visual Basic propose toute une liste de méthodes et de propriétés disponibles pour cet objet. Une méthode est une action que l'on peut exécuter sur un objet

Applications - Police On peut changer la police ainsi: Graisse: Sheets(1).Range("A1").Font.Bold = True Taille: Sheets(1).Range("A1").Font.Size = 12 Nom: Sheets(1).Range("A1").Font.Name = "Arial"

Applications Valeur Ecrire une valeur: Sheets(1).Range("A1").Value = 12 Ecrire une formule: Sheets(1).Range("A1").Value = "=SUM(A1:B1)" Attention: il est nécessaire d'écrire la formule en anglais!

Applications Couleurs (1) 2 syntaxes pour les couleurs: Sheets(1).Range("A1").Interior.Color = vbred (vbblack, vbred, vbgreen, vbyellow, vbblue, vbmagenta, vbcyan, vbwhile ou valeurs en hexa) Sheets(1).Range("A1").Interior.ColorIndex

Applications Couleurs (2) Définition de la couleur du bord: Sheets(1).Range("A1").Borders.Color = vbred Ou Sheets(1).Range("A1").Borders.ColorIndex = 13

Complément sur les couleurs Système de couleur RGB 3 valeurs codées de 0 à 255 (3 x 8bits = 24bits) (Rouge, Vert, Bleu) Blanc : R:255 G:255 B:255 Bleu: R:0 G:0 B:255 Convertir en hexadécimale 255->FF 15->0F Ecrire les 3 valeurs à côté: 0xFFED10 Ecrire en décimale 0xFFED10 ->1677238

Application de la syntaxe de base dans Excel Voir exemple

La suite? Les formulaires Base de données? Approfondir les notions acquises?