Graph bulles avec format d'etiquettes auto

amartin

XLDnaute Nouveau
Bonjour à tous, ci-joint un fichier comportant un graph à bulles. Lorsque je lance la macro, des étiquettes s'ajoutent à côté des bulles. Cela fonctionne très bien mais j'aimerais modifier le format de ces étiquettes, quelqu'un pourrait-il m'aider SVP ?


NB: Je joins un fichier Excel (Zip). J'ai créé un onglet "avant" et un onglet "après" pour illustrer les modifs souhaitées, notamment:
- afficher les tendances positives en verts, les négatives en rouge dans les étiquettes
- alller à la ligne dans l'étiquette dès que changement de type d'infos: le titre de l'étiquette (ex: brand Y) sur la 1ère ligne, les tendances de ventes (GS: +x%; -x%) sur la ligne 2, etc.
- afficher automatiquement le titre du graphique pour qu'il corresponde systématiquement aux infos des cellules A1, E1, F1, G1, H1, I1, J1 de ma feuille Excel.

Autre besoin important, j'ai symbolisé mes bulles par des images (carrés vert, rouge et bleu ici). Pb: chaque fois que je lance la macro "etiquette", les images utilisées pour représenter mes bulles sont effacées, est-ce possible d'éviter l'éffacement tout en utilisant la macro ?

Je ne sais pas ce qu'il est possible de faire mais d'avance, merci !!!
 

Pièces jointes

  • Graph auto.zip
    41.5 KB · Affichages: 151
  • Graph auto.zip
    41.5 KB · Affichages: 151
  • Graph auto.zip
    41.5 KB · Affichages: 149

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Graph bulles avec format d'etiquettes auto

Bonjour,

Code:
Sub Etiquettes()
    Dim p As Object
   ActiveSheet.ChartObjects(1).Activate
   ActiveChart.ApplyDataLabels Type:=xlDataLabelsShowLabel
   ActiveChart.SeriesCollection(1).DataLabels.Font.Size = 10
   ActiveChart.SeriesCollection(1).DataLabels.Border.LineStyle = xlNone
   For i = 1 To ActiveChart.SeriesCollection(1).Points.Count - 1
     With ActiveChart.SeriesCollection(1).Points(i)
        .DataLabel.Characters.Text = ActiveSheet.Cells(i + 3, 1).Text _
                & " : " & ActiveSheet.Cells(i + 3, 5).Text _
                & " ; " & ActiveSheet.Cells(i + 3, 6).Text _
                & " : " & ActiveSheet.Cells(i + 3, 7).Text _
                & " ; " & ActiveSheet.Cells(i + 3, 8).Text _
                & " : " & ActiveSheet.Cells(i + 3, 10).Text
        .DataLabel.Interior.ColorIndex = 36
     End With
   Next i
End Sub

JB
 

Pièces jointes

  • Copie de Graph auto.zip
    44.1 KB · Affichages: 78
Dernière édition:

amartin

XLDnaute Nouveau
Re : Graph bulles avec format d'etiquettes auto

Bonjour, merci Said, très intéressant sauf que je ne sais pas du tout programmer en VBA. Merci JB car grâce à ton fichier:
1- les images utilisées pour illustrer mes bulles ne s'effacent plus lorsque le lance la macro (résolu)
2- j'ai bien une ligne distincte / retour à la ligne pour chaque type d'infos (vente, marge, qtés) à l'intérieur de mon étiquette.

Reste les points suivants si vous voulez bien continuer à m'aider en écrivant les codes correspondants:
1- Comment faire pour que les valeurs inférieures à 0% dans l'étiquette soit en rouge, celles sup à 0% en vert automatiquement?
2- Comment faire pour que le texte "Brand Y" par ex (range A4 à A...) soit en gras et taille 10 (le reste des infos dans l'étiquette doit rester en normal et taille 9)
3- Comment faire pour écrire en automatique le titre du graphe et qu'il reprenne les valeurs A1, E1, F1, G1, H1, I1, J1?

Merci d'avance !!! je joins le dernier update de mon fichier.
 

Pièces jointes

  • Graph auto revu 2.zip
    45.5 KB · Affichages: 40

amartin

XLDnaute Nouveau
Re : Graph bulles avec format d'etiquettes auto

J'ai ouvert le fichier et lancé la macro mais ça ne fonctionne pas de mon côté puisque pas de titre auto, pas de chiffres en rouge ou en vert suivant qu'ils soient positifs ou négatifs. Je vois bien que le code dans le module 1 a été modifié pourtant. Est-ce que tu as testé le fichier et est-ce que ça marchait de ton côté ?
Merci!
 

Discussions similaires

Statistiques des forums

Discussions
312 390
Messages
2 087 937
Membres
103 679
dernier inscrit
yprivey3