Graphe secteur selection manuel d'une série

Résolu/Fermé
borntobealive Messages postés 138 Date d'inscription jeudi 17 juillet 2014 Statut Membre Dernière intervention 25 février 2019 - 19 août 2014 à 16:53
borntobealive Messages postés 138 Date d'inscription jeudi 17 juillet 2014 Statut Membre Dernière intervention 25 février 2019 - 20 août 2014 à 12:01
slt,

Mon probleme est de faire appaitre dans un graphique de type secteur des données non consécutives, j'ai d'abord essayer en donnant l'addresse de l'union de mes cases mais ça n'a rien donné, du coup je me suis permis d'utiliser l'enregistreur de macro :

 ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(1).name = "=""categorie"""
    ActiveChart.SeriesCollection(1).Values = _
        "='comptabilité mensuel'!$G$10;'comptabilité mensuel'!$G$15"
    ActiveChart.SeriesCollection(1).XValues = _
        "='comptabilité mensuel'!$C$10;'comptabilité mensuel'!$C$15"
    ActiveSheet.ChartObjects("Graphique 1").Activate
    ActiveChart.ChartStyle = 26


mais il me gratifie de l'erreur "1004" à chaque fois que je la relance au moment d'ajouter les Values. Le problème c'est que cette macro a été écrite par l'ordianteur donc si quelqu'un peut m'expliquer ce qu'il se passe je pourrais corriger mon code en conséquence (le même genre mais sans les select et les activate)

merci d'avance

3 réponses

ccm81 Messages postés 10900 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 2 novembre 2024 2 425
Modifié par ccm81 le 19/08/2014 à 17:53
Bonjour

Essaies un peu comme ceci

Public Sub ModifiePlage()
Dim gr As Object, tx, ty
tx = Array("a", "b", "c")
ty = Array(1, 7, 3)
Set gr = ActiveSheet.ChartObjects(1).Chart
With gr
.SeriesCollection(1).XValues = tx
.SeriesCollection(1).Values = ty
End With
End Sub

Cdlmnt
1
ccm81 Messages postés 10900 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 2 novembre 2024 2 425
19 août 2014 à 18:57
RQ. On peut aussi faire ça sans macro, par exemple

Valeurs Selectionner B1 puis Ctrl+Selectionner B5
ça donne =(Feuil1!$B$1;Feuil1!$B$5)
Etiquettes Selectionner A1 puis Ctrl+Selectionner A5
ça donne =(Feuil1!$A$1;Feuil1!$A$5)
0
borntobealive Messages postés 138 Date d'inscription jeudi 17 juillet 2014 Statut Membre Dernière intervention 25 février 2019 7
20 août 2014 à 12:01
Je le fais par macro parce que c'est une procedure que je vais lancer genre au moins 16 fois à chaque ouverture de mon classeur ...

ce qui me gêne c'est que manuellement je suis conscient que ça marche (j'ai réussi à faire le record macro après tout) mais que l'automatisation bug peut-être que c'est une histoire de référence, une bibliothèque obscure que j'aurais pas validé)

la méthode avec les array c'est celle que j'utilise par dépit mais ce qui est bien avec les formule c'est que quand tu vas dans ta zone de grapique tu vois d'ou viennent les valeurs alors que pour les array bahhhh, t'as juste des array ;-)
0