Il s'agit d'un tutoriel simple sur la façon de créer et d'afficher un graphique à barres dans une cellule; une technique qui fonctionne très bien lors de la création de rapports de gestion.
Pas:
1. Dans la colonne A, entrez les valeurs que vous souhaitez afficher, c'est-à-dire dans la cellule A1, entrez la valeur 10, dans la cellule A2 20, etc.
2. Dans la colonne B1, entrez la formule suivante : =REPT (« n », A1). Cette formule indique simplement à Excel de répéter la valeur stockée entre " " par le nombre dans la cellule A1.
3. Modifiez la police à « Wingdings ».
4. S'il vous plaît se référer à l'exemple 1 dans le fichier Excel ci-joint.
5. Si vous souhaitez réduire la longueur du graphique à barres, divisez simplement « A1 » dans la formule ci-dessus par 10 ou par le nombre le plus logique. A titre d'exemple, la formule ressemblerait à ceci =REPT (« n », A1/10). Voir l'exemple 2 dans le fichier Excel ci-joint.
Il convient de noter qu'en changeant le "n" dans la formule mentionnée ci-dessus, vous pouvez afficher différentes images. Par exemple, un "J" majuscule affichera un visage souriant tandis qu'un "L" majuscule affichera un visage triste. Voir l'exemple 3 dans le fichier Excel ci-joint.
Faire face à des valeurs négatives
Les formules ci-dessus fonctionnent bien quand vous traitez avec des valeurs positives. Cependant, si la valeur de la colonne A est négative, le graphique de la colonne B se transformera en une chaîne composée d'un certain nombre de symboles différents, perdant ainsi l'effet souhaité (voir l'exemple 4 dans la feuille de calcul ci-jointe).
Une façon de surmonter cette limitation est au moyen d'une instruction IF comme:
=SI(A21<0,REPT(“n”,ABS(A21/10)),REPT(“n”,A21/10))
Explication de la formule ci-dessus:
1. Supposons que la valeur que vous essayez d'afficher dans un graphique à barres se trouve dans la cellule A21. Cette valeur est également négative.
2. La formule commence par dire si la valeur dans A21 est inférieure à 0, c'est-à-dire négative, puis répétez "n" par la valeur absolue (ABS) contenue dans la cellule A21, puis divisez ce nombre par 10. En utilisant la valeur absolue, vous êtes dites à Excel d'ignorer le signe négatif et de traiter le nombre comme une valeur positive.
3. La partie suivante de la formule indique à Excel quoi faire si la valeur est supérieure à 0.
4. Veuillez vous référer à l'exemple 4 dans le fichier joint.
Des ajouts intéressants à ce qui précède seraient d'utiliser une mise en forme conditionnelle pour changer la couleur du graphique en rouge pour les valeurs négatives et en bleu pour les valeurs positives. Laissez-vous guider par votre imagination !
Le tutoriel suivant décrira comment créer un graphique dans une cellule comme celle affichée dans le tableau ci-dessus sous la colonne « Tendance ».
Le graphique est créé en utilisant une fonction appelée « CellChart ». Vous le saisiriez dans Excel comme n'importe quelle autre fonction standard, c'est-à-dire SOMME, MOYENNE ou RECHERCHEV, etc. Cette fonction est appelée « Fonction définie par l'utilisateur » et n'est pas une fonction standard disponible dans Microsoft Excel. Il doit être créé par l'utilisateur à l'aide de VBA.
Quand est entré dans Excel, la fonction CellChart ressemble à ceci:
En examinant de plus près la fonction CellChart, la plage du graphique est définie dans la première partie de la fonction, C3:F3 dans l'exemple ci-dessus. Ensuite, la couleur du diagramme est défini, 203 en utilisant l'exemple ci-dessus.
Maintenant pour les trucs VBA
1. Entrez dans la fenêtre du projet VBA en cliquant avec le bouton droit sur un nom de feuille et en sélectionnant « Afficher le code » ou en sélectionnant « ALT, F11 ».
2. Sur le côté droit, faites un clic droit sur le nom de votre projet et sélectionnez l'encart « module ».
3. Copiez et collez le code suivant dans le nouveau module que vous venez de créer :
'Crée une nouvelle fonction appelée Cell Chart Function CellChart(Plots As Range, Color As Long) As String 'Définit les variables qui seront utilisées plus tard dans le code Const cMargin = 2 Dim rng As Range, arr() As Variant, i As Long, j As Long, k As Long Dim dblMin As Double, dblMax As Double, shp As Shape 'Ce qui suit calcule les graphiques à utiliser pour le graphique Set rng = Application.Caller ShapeDelete rng For i = 1 To Plots.Count If j = 0 Then j = i ElseIf Plots(, j) > Plots(, i) Then j = i End If If k = 0 Then k = i ElseIf Plots(, k)0 Then .Line.ForeColor.RGB = Color Else .Line.ForeColor.SchemeColor = -Color End With End With CellChart = "" End Function Sub ShapeDelete(rngSelect As Range) ' Définit les variables qui seront utilisées plus tard dans le code Dim rng As Range, shp As Shape, blnDelete As Boolean For Each shp In rngSelect.Worksheet.Shapes blnDelete = False Set rng = Intersect(Range(shp.TopLeftCell, shp.BottomRightCell), rngSelect) Si non Ifrng Is Nothing .Address = Range(shp.TopLeftCell, shp.BottomRightCell).Address Then blnDelete = True End If If blnDelete Then shp.Delete Next End Sub
4. Cliquez sur le bouton Enregistrer.
5. Cliquez sur la petite icône Excel en haut à droite sous le menu "Fichier" pour quitter la fenêtre du projet VBA et revenir à Excel
6. Entrez la fonction CellChart dans n'importe quelle cellule comme indiqué ci-dessus.
7. Voir le classeur ci-joint un exemple de travail de ce qui précède.
Pour plus d'informations sur ce type de cellule dans la cartographie de, visitez s'il vous plaît:
Dans la cartographie cellulaire