Archives des étiquettes : formation excel

Comment effectuer une macro avec un bouton formulaire ou commande?

Comment effectuer une macro avec un bouton formulaire ou commande?

 

Cet article traite du bouton de commande appelé aussi bouton poussoir. Vous intégrez un tel objet lorsque vous souhaitez exécuter une macro ou exécuter du code Visual Basic.

Il existe deux types de bouton : le bouton provenant des contrôles de formulaire et les boutons provenant de la bibliothèque ActiveX.

La différence entre les deux types de bouton réside essentiellement dans les propriétés de l’objet. Par exemple, avec le contrôle ActiveX vous pouvez modifier la couleur du bouton ou du texte. Gardez à l’esprit que le résultat final est le même parce que le bouton est lié à un événement _Click() qui enclenche une action lorsque vous cliquez dessus.

Cette action du bouton est définie dans une procédure Visual Basic qu’on appelle aussi macro et qui est écrite dans l’environnement de développement d’Excel.

Dans Excel, pour passer de la feuille de travail à l’environnement de développement, tapez sur les touches ALT F11, pour aller et pour revenir. Dans l’environnement de développement, vous êtes un programmeur et dans la feuille de travail, vous êtes un utilisateur.

Insertion d’un bouton de commande

  1. Développeur
  2. Insérer
  3. Bouton de commande (contrôles de formulaire)
  4. Dessinez un bouton dans la feuille

La figure ci-dessous montre la fenêtre « Affecter une macro » qui s’affiche immédiatement après la création du bouton.

 

Comment effectuer une macro avec un bouton formulaire ou commande?

La Figure ci-dessous montre l’environnement de développement Visual Basic.

Comment effectuer une macro avec un bouton formulaire ou commande?

Le code qui sera écrit entre les lignes Sub Bouton1_Clic() et la dernière ligne

End Sub sera exécuté lorsque vous enfoncerez le bouton poussoir.

Par exemple, si vous écrivez la ligne suivante, vous provoquerez l’apparition d’une boîte de dialogue qui affichera le mot bonjour.

  • Sub Bouton1_Clic()
  • MsgBox « BONJOUR »
  • End Sub

Pour travailler avec lesboutons de commande, vous devez apprendre à manipuler les macros et donc le langage qui est sous-jacent : Visual Basic pour Excel.

Apprendre à programmer n’est pas un exercice facile, il vous faudra de la ténacité, de la patience, de la lenteur et du labeur. Mais au final, vous créerez des applications informatiques avec beaucoup de plaisir.

 

Pour aller plus loin, vous pouvez retrouver les ouvrages de Remy Lentzner qui s’adressent à toutes les personnes qui souhaitent approfondir leurs connaissances sur Excel.

a changer.png

Vous recherchez une formation Excel ? Rendez-vous sur notre site www.cnfce.com / formation Excel

organisme de formation CNFCE

Le débogage sur VBA Excel

Le débogage sur VBA Excel

Cet article porte sur les techniques de débogage que vous mettez en action lorsque des erreurs apparaissent dans votre code au moment de son exécution. VBA propose différentes fenêtres qui vous aideront à débusquer les « bugs ».

Le menu debogage 

Le langage VBA permet de contrôler les différentes étapes de la programmation en mettant à votre disposition des dispositifs de recherche d’erreurs. Le menu horizontal de l’environnement propose une option « Débogage » qui facilite la recherche des « bugs » en proposant un certain nombre d’outils comme les points d’arrêts, la fenêtre espion, la fenêtre des variables et le mode pas à pas.

En cas d’erreurs, VBA stoppe le déroulement de la procédure et place le curseur en surbrillance sur l’expression qui a provoqué l’erreur ou bien juste avant.

La figure suivante montre le menu débogage dans Excel 2010

VBA : LE DEBOGAGE SUR EXCEL

 

La barre d’outils vous aide à terminer ou relancer une erreur. N’oubliez pas que le pointeur doit se trouver obligatoirement dans la procédure.

 

VBA : LE DEBOGAGE SUR EXCEL

Placer un point d’arrêt 

Vous pouvez choisir d’arrêter volontairement le déroulement du code en plaçant un point d’arrêt ocre dans la partie grise verticale de la procédure. Si vous survolez une variable avec la souris, vous constaterez que le contenu de cette variable s’affichera.

Le point d’arrêt peut être enlevé en doucle-cliquant dessus.

ss

Dérouler le code pas à pas

La touche F8 permet d’exécuter le programme en pas à pas tout en vous permettant de suivre le déroulement du programme ligne par ligne. La touche F5 exécute le programme complètement.

Arrêter un programme en cas de problème 

Appuyez sur les touches CTRL PAUSE ou CTRL BREAK pour forcer le programme à s’arrêter.

Réinitialiser le programme

Appuyez sur le bouton « carré bleu » dans la barre d’outils pour terminer le déroulement du code en mémoire.

Les fenêtres espion, exécution et variables locales

Vous pouvez afficher une fenêtre ESPION par le menu AFFICHAGE

ss

Pour décoder le code, VBA vous propose trois différentes fenêtres :

  • La fenêtre Espion
  • la fenêtre Exécution
  • La fenêtre Variables locales

La figure ci-dessous montre la position de la fenêtre Espion. Le bouton droit de la souris permet d’y placer un espion c’est-à-dire le nom d’une variable dont le contenu sera visible au fur et à mesure du déroulement du code en mode pas à pas.

ss

Pour intégrer un espion dans la fenêtre espion, une autre méthode consiste à sélectionner le nom d’une variable puis de la glisser dans la fenêtre esption.

La fenêtre Exécution vous permet de voir le contenu d’une variable à l’aide du point d’interrogation ?

ss

La fenêtre Variables locales vous permet de voir le contenu de toutes les variables contenues  dans le code

ss.png

 

Pour aller plus loin, vous pouvez retrouver les ouvrages de Remy Lentzner qui s’adressent à toutes les personnes qui souhaitent approfondir leurs connaissances sur Excel.

a changer.png

 

Vous recherchez une formation Excel ? Rendez-vous sur notre site www.cnfce.com / formation Excel

organisme de formation CNFCE

 

Comment manipuler du texte avec des fonctions sur excel ?

Comment manipuler du texte avec des fonctions sur excel ?

hipster or bearded man with long beard and stylish hair on thoughtful face in tie and white shirt on textured beige background, copy space

Cet article s’intéresse à la manipulation de caractères avec les fonctions de texte d’EXCEL. Il est courant de récupérer des données provenant d’un système informatique extérieur. Les informations sont alors souvent collées les unes aux autres dans le tableur.

Par exemple, vous pourriez importer une chaîne de caractères « 1110422 » qui signifierait le 22/04/2011 pour la société 1 ou bien la chaîne de caractères 2980422 qui signifierait dans votre langage métier le 22/04/1998 pour la société 2.

Excel met à votre disposition de nombreuses fonctions qui permettent d’extraire des morceaux de texte à partir d’une chaîne de caractères.

Voici cinq fonctions qui pourront vous servir :

  • =DROITE(cellule ; nombre de caractères) : vous extrayez un nombre de caractères à partir de la droite.

Par exemple, si A5 contient le texte « PARIS 75009 », l’expression =DROITE(A5;5) extrairales 5 caractères à partir de la droite de la cellule A5 et renverra 75009.

  • =GAUCHE(cellule ; nombre de caractères) : vous extrayez un nombre de caractères à partir de la gauche.

Par exemple, si A5 contient le texte « PARIS 75009 », l’expression =GAUCHE(A5;5) extrairales 5 caractères à partir de la gauche de la cellule A5 et renverra PARIS.

  • STXT(cellule, départ, nombre de caractères) : vous extrayez de la cellule un nombre de caractères en partant d’une position donnée.

Par exemple, si A5 contient le texte « PARIS 75009 », l’expression =STXT (A5;3;4) extraira4 caractères à partir du 3ème caractère et renverra la chaîne « RIS 7 ».

  • =TROUVE(critère ; cellule) : Cette fonction vous renvoie la position du critère dans la cellule.

Par exemple, si A5 contient le texte « PARIS 75009″,  l’expression =TROUVE( » « ,A5) cherche le premier espace dans la cellule A5 et renvoie la valeur 6 qui indique sa position dans la chaîne de caractères.

L’expression =TROUVE(« 9 »;A5) renverra la valeur 11 puisque le 9 se trouve à la 11ème position dans la chaîne de caractères.

  • =CNUM(« chaîne numérique ») transforme la chaîne numérique en nombre.

Par exemple, si la cellule A5 contient la chaîne ‘520 (et vous pouvez constater une apostrophe devant le nombre), la valeur 520 sera aligné à gauche parce que 520 sera considéré comme du texte par Excel. Si vous écrivez dans une autre cellule l’expression =CNUM(A5), la valeur 520 sera alors automatiquement alignée à droite dans la cellule.

Transformer une chaîne de caractères en date

Voici un groupe de caractères stockés dans la cellule A1: G110422. Nous voulons récupérer les deux caractères « 11 » et les transformer en 2011, puis récupérer les 4 caractères « 0422 » et les transformer en 22/04, puis par un coup de baguette magique, transformer le tout en 22/04/2011. Excel propose une fonction qui transforme en date trois chaînes de caractères.

  • L’expression =DATE(« année »; »mois »; »jour ») transforme des données texte en date.

Par exemple, l’expression =DATE(« 2011″; »04″; »22 ») renverra 22/04/2011.

Nous devrons donc extraire les caractères de « G110422 » pour les mettre dans la fonction DATE. Mettons la chaîne « G110422 » dans la cellule A2.

L’expression =DATE(« 20 »& STXT(A2;2;2);STXT(A2;4;2);DROITE(A2;2)) renverra 22/04/2011. Si Excel n’affiche pas la date, vous devrez modifier le format d’affichage en choisissant le format date courte.

L’expression « 20 » & STXT(A2;2;2) indique que la chaîne « 20 » est collée au résultat de la fonction STXT, c’est à dire la chaîne « 11 »

On aurait pu écrire également : CONCATENER(« 20 »;STXT(A2;2;2))

Voici l’expression finale avec la fonction CONCATENER qui signifie coller : =DATE(CONCATENER(« 20 »;STXT(A2;2;2));STXT(A2;4;2);DROITE(A2;2))

Un SI pour tester des caractères

Considérons la cellule A1 contenant les chaînes ‘110422 et ‘980422. La première signifie  le 22/04/2011 et la deuxième le 22/04/1998. Nous voulons qu’ Excel fasse un test sur les 2 premiers caractères.

Si ces deux premiers caractères sont compris entre 90 et 99, alors la date finale devra avoir la forme 22/04/19XX et dans le cas contraire la date finale devra avoir la forme 22/04/20XX.

L’expression suivante transforme les deux premiers caractères en numérique grâce à la fonction CNUM. La fonction ET permet de réaliser un test entre deux valeurs à l’intérieur d’une fonction SI.

  • =SI(ET(CNUM(STXT(A1;1;2))>=90;CNUM(STXT(A1;1;2))<=99);« 19 »;« 20 »)

L’expression suivante intègre la précédente dans une fonction DATE.

  • =DATE(SI(ET(CNUM(STXT(A1;1;2))>=90;CNUM(STXT(A1;1;2))<=99);« 19 »;« 20 »)&STXT(A1;1;2);STXT(A1;3;2);STXT(A1;5;2))

Extraire des prénoms et des noms séparés par un espace

La figure ci-dessous montre une liste de prénoms et de noms séparés par un espace dont la position est aléatoire. L’objectif est d’extraire les prénoms et les noms pour les placer dans deux colonnes séparés.

Comment manipuler du texte avec des fonctions sur excel ?

La façon de faire pourrait être la suivante :

  • Récupérer la longueur de la chaîne de caractères grâce à la fonction NBCAR(A2)
  • Repérer la position de l’espace grâce à la fonction TROUVE( » « ;A2)
  • Extraire le prénom du début jusqu’à la position de l’espace moins 1, avec la fonction GAUCHE(A2,TROUVE( » « ;A2)-1)
  • Extraire le nom en partant de la position de l’espace plus 1 sur la longueur totale de la chaîne avec la fonction STXT(A2;TROUVE( » « ;A2)+1;NBCAR(A2))

La figure ci-dessous montre les formules dans le tableau

Comment manipuler du texte avec des fonctions sur excel ?

 

Pour aller plus loin, vous pouvez retrouver ces ouvrages qui s’adressent à toutes les personnes qui souhaitent approfondir leurs connaissances sur Excel.

a changer.pngVous recherchez une formation Excel ? Rendez-vous sur notre site www.cnfce.com / formation Excel

organisme de formation CNFCE

Comment exécuter une macro sur excel ?

Comment exécuter une macro sur excel ?

Cet article s’intéresse aux macros Excel, vous y découvrirez la manière d’enregistrer une macro puis de l’exécuter. Les articles suivants rentreront en profondeur dans le code des macros appelé code VBA ou Visual Basic Application.

Le terme macro indique un enregistrement automatique des actions effectuées à la main. Par exemple, vous mettez en couleur un groupe de cellules ou bien vous insérez une ligne.

  • Un classeur BUDGET.XLSX est une classeur qui ne contient pas de macro.
  • Un classeur BUDGET.XLSB est un classeur qui contient des macros.

Dans la version Excel 2010, le démarrage d’une macro s’effectue simplement dans le menu Affichage. Il est aussi possible d’utiliser le menu Développeur

Comment exécuter une macro sur excel ?

Comment exécuter une macro sur excel ?

Vous pouvez :

  • Afficher l’ensemble des macros existantes
  • Enregistrer une macro
  • Utiliser des références relatives.

Les références relatives sont employées lorsqu’une série d’action ne dépend pas de sa position initiale, par exemple, lorsqu’un déplacement vers le bas doit s’exécuter quelle que soit la position du pointeur, en démarrant justement à la position relative du pointeur.

Emplacement des macros

Vous pouvez définir trois emplacements spécifiques pour les macros. Soit le classeur en cours, soit un nouveau classeur soit enfin un classeur de macro personnelles appelé PERSONAL.XLSB qui représente une sorte de conteneurs de macros accessibles par tous les classeurs ouverts.

Ce classeur PERSONAL.XLSB est stocké dans un dossier appelé XLSTART et est systématiquement mis en mémoire et caché au moment du démarrage d’Excel.

Vous pouvez toujours faire apparaitre ce classeur en cliquant sur Affichage / Afficher / PERSONAL.XLB puis dans le menu Affichage / Changement de fenêtre.

Gardez à l’esprit que les macros stockées dans le classeur PERSONAL.XLSB sont accessibles par tous les autres classeurs ouverts pas la suite. En d’autres termes, ce classeur devient une sorte de bibliothèques de macros.

Enregistrer une macro

Pour enregistrer les commandes d’une macro, suivez la procédure :

  • Cliquez sur Affichage / Macro / Enregistrer une macro
  • Donnez un nom à cette macro. Ne mettez pas d’espace dans le nom. Vous pouvez indiquer une touche de raccourci qui lancera la macro
  • Indiquez l’emplacement de la macro.
  • Tapez vos commandes

Arrêter une macro

Pour arrêter l’enregistrement d’une macro :

– Cliquez sur Affichage / Macro / Arrêter l’enregistrement

menu excel

Lancer une macro

  • Cliquez sur Affichage / Macros / Afficher les macros
  • Sélectionnez la macro
  • Cliquez sur le bouton Exécuter

Voir le contenu d’une macro (alt F8)

  • Cliquez sur Affichage / Macros / Afficher les macros
  • Sélectionnez la macro
  • Cliquez sur le bouton Modifier

 

Pour aller plus loin, vous pouvez retrouver ces ouvrages qui s’adressent à toutes les personnes qui souhaitent approfondir leurs connaissances sur Excel.

a changer.png

Vous recherchez une formation Excel ? rendez-vous sur notre site www.cnfce.com / formation Excel

organisme de formation CNFCE

Comment se servir de la fonction SI sur excel ?

La fonction SI vous permet d’effectuer des calculs en fonction d’une condition,

le résultat pouvant être une valeur numérique ou une chaîne de caractères.

Plusieurs conditions peuvent être imbriquées les unes dans les autres.

LA FONCTION SI SIMPLE

Vous utilisez la fonction logique SI lorsque vous avez besoin d’effectuer des tests sur le contenu d’une cellule.

Si le test est positif, l’expression placée après le 1er point virgule est utilisée et, dans le cas contraire, l’expression placée après le deuxième point virgule renvoie une valeur.

La syntaxe : = SI (EXP; VALEUR_SI_VRAI ; VALEUR_SI_FAUX)

Exemples  :

Voici un test simple avec un résultat sous forme de texte

=SI (D6>=2000 ; « ALERTE » ; « OK »)

Voici un test avec une formule comme résultat sinon 0

=SI (D7>1500 ; D7*2% ; 0)

Voici un test avec un condition ET

=SI (ET(C13= »F »;D13=3); »contact »; » »)

Voici un test sur une formule

=SI (ESTERR (B5/B6) = VRAI ; »interdit »;B5/B6)

=SI (ESTVIDE(B5) = VRAI ; « vide » ; B5)

UN SI A L’INTERIEUR D’UN AUTRE SI

Il est parfois nécessaire de réaliser une condition SI à l’intérieur d’une fonction SI,

c’est à dire de mettre en place une condition imbriquée.

Voici un exemple de calcul de primes :

Si D4 >50 alors on affecte une prime de 10

Si D4 >30 alors on affecte une prime de 5

Si D4 >0 alors la prime est de 0

Dans un calcul à l’intérieur d’une condition SI, ne mettez pas de signe égal (=) à l’intérieur d’une autre formule SI.

=SI (D4>50 ; 10 ; SI (D4>30 ; 5 ;0 ) )

Avec trois conditions, vous aurez 2 fonctions SI imbriquées. Attention aux parenthèses.

Avec quatre conditions, vous aurez 3 fonctions SI imbriquées.

Au-delà ; employez la fonction RECHERCHE pour gérer les conditions multiples.

 

CALCUL DE COMMISSION POUR DES COMMERCIAUX

– Pour un CA (cellule A1) supérieur ou égal à 30000, le commercial gagne 20% du CA

– Pour un CA supérieur ou égal à 15000, le commercial gagne 15% du CA

– en dessous, le commercial gagne 10% du CA

=SI(A1>=30000 ;20% * A1 ; SI(A1>=15000 ; 15% *A1 ; 10%*A1))

 

Voici trois fonctions SI imbriquées :

=SI(B8>800;350;SI(B8>500;210;SI(B8>300;120;50)))

Au delà de trois fonctions SI, il est plus raisonnable d’utiliser la fonction RECHERCHE à la place.

 

Pour aller plus loin, vous pouvez retrouver ces ouvrages qui s’adressent à toutes les personnes qui souhaitent approfondir leurs connaissances sur Excel.

a changer.png

Vous recherchez une formation Excel ? rendez-vous sur notre site www.cnfce.com / formation Excel

 

organisme de formation CNFCE

Comment se servir des fonctions RECHERCHEV et SIERREUR sur excel ?

Réglementation formation gestes et postures au travail

La fonction RECHERCHEV permet de trouver une chaîne de caractère ou un nombre dans une liste puis d’en déduire une valeur placée dans une autre colonne sur la même ligne que le critère cherché.

La fonction SIERREUR() permet de tester s’il y a des erreurs

ffe.png

Dans le cas où ce dernier n’est pas trouvé, Excel renvoie une erreur et la fonction SIERREUR permet justement d’agir pour éviter d’afficher le code erreur.

L’expression  =RECHERCHEV($A7;base1!$A$1:$E$285;5;FAUX) recherche d’abord une valeur située dans la cellule A7, de la feuille Base1 dans le groupe de cellules A1:E285.

Si cette valeur est trouvée, Excel va renvoyer la valeur située dans la 5ème colonne sinon il va renvoyer une expression #N/A (non accessible).

Le paramètre FAUX indique que la recherche du critère se fait exactement sur tous les caractères.

On utilise la paramètre VRAI lorsqu’on utilise la fonction RECHERCHEV pour rechercher une valeur numérique entre deux valeurs, comme le fait la fonction RECHERCHE.

Le signe $ est employé pour éviter les erreurs de recopie de la formule.

– $A7 fixe la colonne A

– Base1!$A$1:$E$285 fixe le bloc de cellules A1:E285

L’expression =SIERREUR( RECHERCHEV ( $A7 ; base1!$A$1:$E$285 ; 4 ; FAUX ) ; «  » ) renvoie une valeur vierge si la recherche n’a pas abouti.

 

Vous recherchez une formation Excel ? rendez-vous sur notre site www.cnfce.com / formation Excel

 

organisme de formation CNFCE

Qu’est ce que la valeur cible sur Excel ?

Qu’est ce que la valeur cible sur Excel ?

Le dispositif valeur cible permet de trouver la valeur d’un paramètre servant à réaliser une formule. Une hypothèse est définie et Excel doit « remonter » le calcul.

Lire la suite

« Entrées précédentes