-Ambiances-
-Civilisations-
-Arts-
-Loisirs-
-Divers-

-Fractals- / -Musique mp3-

-L'antre du dragon- / -La crypte- / -Lost in open space-

-Graphisme & Peinture- / -BD- / -Lecture- / -Citations-

-L'Atelier Boomerangs- / -L'expo Boomerang-

-Accueil informatique- / -Logiciels utiles- / -Gifs animés / -Un PC loisir au travail-
-Logiciels faits main- / -Didacticiel VBA 1- / - Didacticiel VBA 2- / -Code VBA libre-



matrix
Livre d'or --Plan du site- -Accueil  

VISUAL BASIC pour EXCEL : LECON n°1

0-INTRODUCTION

1-PREMIERS PAS

1-1 Petit exercice:
1-2 Observons ce code:

2-APPRENTISSAGE SOLITAIRE ET VBA POUR EXCEL : LA PHILOSOPHIE

3-LES PREMIERES FONCTIONS SIMPLES :

3-1 Commencer un nouveaux programme ou sub
3-2 Sélectionner une cellule et lui attribuer une valeur
3-3 Exercice :
3-4 Les variables

4-PASSONS AUX CHOSES SERIEUSES

4-1 Les conditions
4-2 Exemple :
4-3 Les boucles ou itération
4-4 Exemple 

5-EXERCICE RECAPITULATIF

-a-

0-INTRODUCTION 

Vous maîtrisez correctement Excel, vous voulez aller un peu plus loin avec ce formidable outil.
Vous avez exploré tout au plus 10% de ce logiciel.
Je vous propose une introduction, un petit cours pour découvrir et apprendre en douceur à utiliser les macros et VBA (Visual Basic Application) pour Excel
Ceci n'a rien d'académique, en la matière, je suis autodidacte. Alors ce que je vous propose là n'est qu'une méthode simple, une introduction. Un petit début pour que vous puissiez voler vite de vos propres ailes. La maîtrise, la vraie, ne viendra qu'avec la pratique

Vous retrouverez tout les exercices et exemples de ce didacticiel, tutorial, dans le fichier suivant :telecgargement exovba.xls (enregistrer la cible sous …)

-a-

1-PREMIERS PAS

Qu'est ce qu'une macro
Une macro c'est l'enregistrement d'une action réalisée dans Excel, n'importe quelle action. C'est un programme

1-1 Petit exercice:

Réalisez l'action suivante:
-allez dans outils/macro/sécurité choisissez niveau de sécurité faible sinon le vba est désactivé
-ouvrez Excel sauvegardez le classeur ou vous voulez sous le nom "exovba.xls"
-sélectionnez la cellule C5
-Allez dans outils/macro/nouvelle macro"
-Tapez "exo_a" comme nom pour cette macro puis OK
-Tapez 25 puis "entrée"
-Allez dans outil/macro/arrêter l'enregistrement

Vous avez réalisé un mini programme qui tape 25 dans la cellule sélectionnée puis sélectionne la cellule C6 chaque fois qu'on l'exécute

Essayons le:
-Sélectionnez la cellule E10
Allez dans outil /macro /macros
-Choisissez la macro "exo_a" puis OK
-Miracle, ça marche!!!! Sans le savoir vous avez écrit vos premières lignes de code, votre premiers programme ou « Sub »

 

1-2 Observons ce code:

-allez dans outil/macro/Visual basic editor un programme d'aspect un peu rébarbatif s'ouvre
-En haut à gauche dans la fenêtre "Project VBA Project", développez le dossier module, c'est ici que s'enregistrent vos mini programmes
-Double cliquez sur "Module 1" dans la fenêtre principale votre programme apparaît
-Si vous n'etes pas totalement inapte en anglais vous comprenez alors vite
-Remplacez "25" par "azerty" puis retournez dans Excel
-sélectionnez une cellule et exécutez la macro "exo_a" et la pas besoin d'insister plus avant vous avez compris ce qu'est la programmation

-a-

2-APPRENTISSAGE SOLITAIRE ET VBA POUR EXCEL : LA PHILOSOPHIE

En fait ce que je dis là est le plus important, si vous ne devez retenir qu’une chose ce doit être celle là.
Je ne cous présente dans ce didacticiel que des fonctions simples et surtout que vous ne retrouverez pas avec la méthode suivante. Si je ne vous présente rien de plus c’est que C’EST INUTILE !!!!!
Vous avez remarqué que vous avez écrit du code sans connaître la moindre touche de langage. On peut faire pareil pour tout, vous enregistrez une macro « à la main » puis vous observez le code correspondant. Toutes les fonctions qui vous seront utile pour aller plus loin s’y trouveront et n’attendent plus que vous les modifiiez à votre convenance

-a-

3-LES PREMIERES FONCTIONS SIMPLES :

3-1 Commencer un nouveaux programme ou sub

-allez dans outil/macro/Visual basic editor un programme d'aspect un peu rébarbatif s'ouvre
-En haut à gauche dans la fenêtre "Project VBA Project", développez le dossier module, c'est ici que s'enregistrent vos mini programmes
-Double cliquez sur "Module 1" dans la fenêtre principale
-en bas tapez sub Nomdesub  
-En bas apparaît la fonction EndSub automatiquement, vous pouvez écrire votre programme entre ces 2 lignes


3-2 Selectionner une cellule et lui attribuer une valeur

Choisir une cellule XLS :
Vous avez vu : Range("C6")

il y a beaucoup plus pratique la fonction Cells(n° de ligne, n° de colonne)
L’équivalent est  donc Cells(6,3)

Sélectionner une cellule : fontion select
Cells(6,3).select    On applique la fonction sélectionner à la cellule C6

Lui attribuer une valeur :
Selection.Value="qsdf" met le texte (toujours entre guillemet pour du texte…) dans la sélection ici C6

ou

Selection.Value=100 met la valeur 100 dans la sélection ici C6

Enfantin non ?


3-3 Exercice :

Ecrivez un petit programme qui met dans la cellule A1 la valeur 20 et dans la cellule A2 le texte bingo puis sélectionne la cellule B1. Dans une sub nommée « exo_b »

 

3-4 Les variables

Une variable est un endroit où on peut stocker toutes sortes de choses comme des chiffres, du texte… et avec lesquelles il est possible d’effectuer des opérations. On lui donne le nom qu’on veut.

Créer une sub nommée « exo_c » pour réaliser les instructions suivantes :

Mettre la valeur de la cellule A2 dans la variable nommée (arbitrairement)  truc
truc=cells(2,1)

mettre dans la variable chose 3 fois la variable truc
chose=3*truc

mettre la valeur de chose dans la cellule A3
Cells(3,1).Value=chose

 -a-

4-PASSONS AUX CHOSES SERIEUSES

Les fonctions que je vous présente là ne peuvent être découverte avec la methode mentionnée dans le chapitre 2. Ce sont elles qui font la différence entre le simple utilisateur de macro et le programmateur.

 4-1 Les conditions

Ce sont des tests logiques réalisant une série d’action si ils sont concluant et une autre dans le cas inverse.
C’est la fonction :

If « condition » then
« instruction si la condition est réalisée »
else
« instruction dans le cas contraire »
endif

Les plus simples opérateur de condition sont : = ; > ; < ; >= ; <=

 

4-2 Exemple :

-taper 1 dans la cellule A5
-allez dans outil/macro/Visual basic editor un programme d'aspect un peu rébarbatif s'ouvre
-En haut à gauche dans la fenêtre "Project VBA Project", développez le dossier module, c'est ici que s'enregistrent vos mini programmes
-Double cliquez sur "Module 1" dans la fenêtre principale
-en bas tapez sub exo_d
-En bas apparaît la fonction EndSub automatiquement, vous pouvez écrire votre programme entre ces 2 lignes
Taper le code suivant :

bidule=cells(5,1)  met la valeur de A5 dans la variablebidule
if bidule=1 then teste si bidule est bien egale à 1
cells(5,2).select selectionne la cellule B5
Selection.value=”La cellule A5 est bien egale à 1” Met le texte La cellule A5 est bien egale à 1 dans la cellule séléctionnée
else sinon
cells(5,2).select selectionne la cellule B5
Selection.value=” La cellule A5 n’est pas egale à 1” Met le texte La cellule A5 n’est pas egale à 1 dans la cellule séléctionnée
Endif fin des conditions

Essayons :
-Executez la macro exo-d
-remplacer 1 par 1234 dans la cellule A5 puis exécutez à nouveau exo_d

 

4-3 Les boucles ou itération

Indispensable pour répéter une action un grand nombre de fois :

For « variable » = « valeur de debut » to « valeur de fin »
« Instructions à répéter »
Next « variable »

 

4-4 Exemple :

-allez dans outil/macro/Visual basic editor un programme d'aspect un peu rébarbatif s'ouvre
-En haut à gauche dans la fenêtre "Project VBA Project", développez le dossier module, c'est ici que s'enregistrent vos mini programmes
-Double cliquez sur "Module 1" dans la fenêtre principale
-en bas tapez sub exo_e
-En bas apparaît la fonction EndSub automatiquement, vous pouvez écrire votre programme entre ces 2 lignes
-tapez le code suivant :

For i=1 to 100 ligne1
Cells(i,4).select ligne 2
Selection.value=i ligne 3
Next I ligne 4

Ce code effectue les actions suivantes:
-ligne1 : ajoute 1 a la valeur de la variable i (1 la premiere fois, puis 2 puis 3…jusqu'à 100
-ligne 2 selectionne la cellule D « valeur de i »
-ligne3 met la valeur de i dans la cellule sectionnée
-ligne 4 renvoie à la ligne 1 jusqu'à ce que i ai la valeur 100

-a-

5-EXERCICE RECAPITULATIF

-Sur la Feuil2 du classeur créer un tableau de 2 colonnes avec pour titre « Prénom » dans la colonne A et « sexe » dans la colonne B
-Dans la colonne prénom taper une série de 10 prénom de votre choix et leur sexe dans la colonne d’a coté sous la forme « h » pour homme et « f » pour femme
Faite un tableau de deux colonnes avec comme titre « Femmes » dans la colonne E et « Homme » F
Créer une sub nommée exo_f
cette sub devra parcourir le tableau de la ligne 2 à la ligne 11 (pas le titre) et écrire le nom de la personne dans la bonne colonne (Homme ou femme) en fonction de son sexe

Je sais cet exercice n’est pas évident mais tentez le coup, cassez vous le crâne et si vous n’y arrivez pas regardez le corrigé…telecgargementexovba.xls

 

Si ce didacticiel vous à plu, visitez la leçon n°2

 

cercle

-Créations-
-Informatique-

-Celtes- / -Mandalas- / Omar Khayyam-

-Plan du site- / -Liens- / Sites amis- / -References- / -Livre d'or/Guestbook- / -Entrée-

Livre d'or --Plan du site- -Accueil