Changement de forme pour graphe nuage de point

kris12

XLDnaute Nouveau
Bonjour à tous,

J’ai créé une macro qui me trace un graphique automatiquement tel que présenté en pièce jointe en fonction des données d’un tableau également attaché en pièce jointe.
Dans une case (disons A1), j’affiche une liste reprenant les différents paramètres de mon tableau. En fonction du paramètre que j’affiche dans cette case, la macro va rechercher dans le tableau et prends les valeurs correspondantes pour celui-ci et me trace mon graphique.
Je rencontre une difficulté dans l’étape précédente. Je souhaiterais dans une autre case (A2) toujours afficher la même liste de paramètres. Dans cette liste je choisirai un autre paramètre de mon tableau et je voudrais que lorsqu’il rencontre une valeur différente de la première valeur présente dans la colonne du paramètre sélectionné, il m’affiche ces points là avec une autre forme.

Ex : Dans la case A1 je sélectionne le paramètre 1. Le graphe se trace ainsi comme dans l’image jointe.
Dans la case A2 je sélectionne cette fois le paramètre 4. Je souhaite donc que tous les cas qui prennent la valeur 200 pour ce paramètre s’affichent en rond dans le graphe.

J’espère avoir été assez clair dans mes explications. Sinon n’hésitez pas à me demander plus de renseignements.

Merci d’avance
 

Pièces jointes

  • graphe.jpg
    graphe.jpg
    24.8 KB · Affichages: 100
  • tableau.JPG
    tableau.JPG
    65.5 KB · Affichages: 105
  • graphe.jpg
    graphe.jpg
    24.8 KB · Affichages: 107
  • tableau.JPG
    tableau.JPG
    65.5 KB · Affichages: 105
  • graphe.jpg
    graphe.jpg
    24.8 KB · Affichages: 110
  • tableau.JPG
    tableau.JPG
    65.5 KB · Affichages: 109

kris12

XLDnaute Nouveau
Re : Changement de forme pour graphe nuage de point

Avec l'aide du qq'un j'ai trouvé une solution pour le pb que j'ai expliqué auparavant. J'attache cette fois le classeur simplifié sur lequel je travaille. Voilà le code utilisé pour changer la forme comme souhaité et expliqué dans le premier message (à voir ac fichier joint)

Dim z As Integer
Dim nom_param As Integer


For z = 5 To 8
If Sheets("Résultats").Cells(41, 6).Value = Sheets("Définition des cas").Cells(15, z).Value Then
nom_param = z
End If
Next



k = 16
For i = 1 To 16

If Sheets("Définition des cas").Cells(k, nom_param).Value = Sheets("Définition des cas").Cells(16, nom_param).Value Then

ActiveChart.SeriesCollection(i).Select
With Selection
.MarkerStyle = xlCircle
.MarkerBackgroundColorIndex = 0
.MarkerForegroundColorIndex = 5
.MarkerSize = 10
End With

Else: ActiveChart.SeriesCollection(i).Select
With Selection
.MarkerStyle = xlTriangle
.MarkerBackgroundColorIndex = 0
.MarkerForegroundColorIndex = 5
.MarkerSize = 10
End With


End If

k = k + 1

Next


Cette méthode fonctionne donc si on a seulement deux valeurs différentes pour chaque paramètre. Mais comment faire si les paramètres prennent 3,4,5 ou plus de valeurs différentes (que cela soit aléatoires)?

Je bloque complètement sur ce problème.

Merci d'avance de l'aide que vous pourriez m'apporter.
 

Pièces jointes

  • exemple.xlsm
    96.5 KB · Affichages: 71
  • exemple.xlsm
    96.5 KB · Affichages: 72
  • exemple.xlsm
    96.5 KB · Affichages: 74

Discussions similaires

Statistiques des forums

Discussions
312 378
Messages
2 087 759
Membres
103 660
dernier inscrit
205 Peugeot