récup. donnée de graph

  • Initiateur de la discussion Initiateur de la discussion mathieu
  • Date de début Date de début

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 !

M

mathieu

Guest
bonjour

voila
je cherche à récupérer la valeur d'un point sur un graphique (type courbe ou nuage de point) dont je n'est pas les données de base

et je voudrait faire tons ça dans une macro

n'esitez pas a demander des précisions

merci d'avance

a+
fifou
 
j'ai bidouiller quelque chose a vous de me dire ce que ça vaux

sub aaa()

Dim val
ActiveSheet.ChartObjects("Graphique 1").Activate
ActiveChart.SeriesCollection(1).Points(1).hasDataLabel=true
ActiveChart.SeriesCollection(1).Points(1).DataLabel.Select
val = Selection.Characters.Text


Windows("feuil1").Activate
Range("a1").Value = val

End Sub

voila voila
si ça peut servir à qqun

a+
fifou
 
bonjour Mathieu

ta macro fonctionne

ci joint une autre version sans Select , à adapter en fonction du nom de tes feuilles

Sub pointsGraph()
Dim Valeur As Single

'recupere la valeur du 1er point dans la 1ere serie d'un graphique
'nommé "Graphique 1" , positionné dans la Feuil1
With Sheets("Feuil1").ChartObjects("Graphique 1").Chart.SeriesCollection(1).Points(1)
.HasDataLabel = True 'affiche la valeur du point dans le graphique
Valeur = .DataLabel.Characters.Text 'recupere la valeur du point dans une variable
.HasDataLabel = False 'ne plus afficher la valeur du point
End With

Sheets("Feuil1").Range("A1") = Valeur
End Sub


bon apres midi
MichelXld
 
voila le code que j'ai rentré car il faut que je récupère le label du dernier point :

Dim val As Single
Dim nb As Single
Workbooks("15465.xls").Activate
nb = Sheets("graph excel").ChartObjects(1).Chart.SeriesCollection(1).Points.Count
With Sheets("graph excel").ChartObjects(1).Chart.SeriesCollection(1).Points(nb)
val = .DataLabel.Characters.Text
End With
Windows("tableau indice.xls").Activate
Range("I17").Value = val
Range("I18").Value = nb
End Sub

et il me rend :
val =91.000005487 qui ne corespond à rien dans mon fichier
nb=14 alors que j'ai 15 points

si quelqu'un peut m'éclairer

merci d'avance

a+
fifou
 
rebonjour Mathieu

je n'ai pas testé mais si les valeurs ne sont pas affichées dans le graphique il faut ajouter ( comme dans le premier message )


Dim val As Single
Dim nb As Single
Workbooks("15465.xls").Activate
nb = Sheets("graph excel").ChartObjects(1).Chart.SeriesCollection(1).Points.Count
With Sheets("graphExcel ").ChartObjects(1).Chart.SeriesCollection(1).Points(nb)
.HasDataLabel = True 'affiche la valeur du point dans le graphique
val = .DataLabel.Characters.Text
.HasDataLabel = False 'affiche la valeur du point dans le graphique
End With
Windows("tableau indice.xls").Activate
Range("I17").Value = val
Range("I18").Value = nb
End Sub


il est preferable de ne pas utiliser "Val" comme variable car c'est aussi le nom d'un fonction Excel ...je fais aussi souvent cette erreur ...;o)


bonne soiree
MichelXld
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour