Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Modifier une macro : valeur fixe plutôt que valeur variable

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Imperium

XLDnaute Junior
Bonjour à tous,

Je suis allé chercher une macro sur le site de microsoft, permettant d'ajouter des étiquettes à un graphisme en nuages de points.

Comment faire pour utiliser une macro pour ajouter des étiquettes aux points de données dans un graphique à nuages de points (XY) ou un graphique à bulles dans Excel

Sauf que ce code est effectivement calibré pour fonctionner d'une certaine façon, et je n'ai pas du tout la compétence pour le modifier 🙂

Je m'explique :

Le code dit que les libellés des étiquettes seront systématiquement les données de la colonne située à à gauche de la colonne des données en abscisse.

Or, je souhaite moi que les données en étiquettes soit systématiquement issues de la colonne J, peut importe ou se trouve la colonne des données en abscisse.

Comment faire ? 🙂 Ci-joint le code, un immense merci par avance à vous !

Code:
Sub AttachLabelsToPoints()

   'Dimension variables.
   Dim Counter As Integer, ChartName As String, xVals As String

   ' Disable screen updating while the subroutine is run.
   Application.ScreenUpdating = False

   'Store the formula for the first series in "xVals".
   xVals = ActiveChart.SeriesCollection(1).Formula

   'Extract the range for the data from xVals.
   xVals = Mid(xVals, InStr(InStr(xVals, ","), xVals, _
      Mid(Left(xVals, InStr(xVals, "!") - 1), 9)))
   xVals = Left(xVals, InStr(InStr(xVals, "!"), xVals, ",") - 1)
   Do While Left(xVals, 1) = ","
      xVals = Mid(xVals, 2)
   Loop

   'Attach a label to each data point in the chart.
   For Counter = 1 To Range(xVals).Cells.Count
     ActiveChart.SeriesCollection(1).Points(Counter).HasDataLabel = _
         True
      ActiveChart.SeriesCollection(1).Points(Counter).DataLabel.Text = _
         Range(xVals).Cells(Counter, 1).Offset(0, -1).Value
   Next Counter

End Sub
 
Re : Modifier une macro : valeur fixe plutôt que valeur variable

Bonsoir Imperium

Peut-être comme ceci
A+
 
Re : Modifier une macro : valeur fixe plutôt que valeur variable

Merci beaucoup à toi, je vais tester ça 🙂

Edit : En fait ça ne marche pas : la macro réagit bien mais les étiquettes qu'elle affichent ne correspondent pas du tout aux données (comme si elle les mettait dans le désordre). Dommage 🙁
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
0
Affichages
459
Réponses
2
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…