Graphique histogramme + courbe

Cousinhub

XLDnaute Barbatruc
Bonjour,

Comme les graphiques et moi, ça fait plus d'un, je m'en remets aux dieux (déesses) du graph afin de m'indiquer comment réaliser ce type de graphique. (de préférence avec xl 2003, version utilisée au boulot)

Dans le fichier joint, j'ai un tableau avec en colonnes, les mois, et en lignes, des noms, puis une variante.

Ce que je voudrais faire, c'est de mettre tous les noms en histogramme, et la variante sur une courbe, avec un axe secondaire.
Lorsque je choisis le type personnalisé, il met par défaut la moitié en histogramme, et l'autre en courbe....

Merci pour votre coup de main.

Hub
 

Pièces jointes

  • type graphique histo courbe.xls
    19 KB · Affichages: 70
  • type graphique histo courbe.xls
    19 KB · Affichages: 74
  • type graphique histo courbe.xls
    19 KB · Affichages: 82

job75

XLDnaute Barbatruc
Re : Graphique histogramme + courbe

Bonjour Hubert, heureux de te croiser :)

Lance donc cette macro :

Code:
Sub TypeSéries()
Dim i As Byte
With ActiveSheet.ChartObjects(1).Chart
For i = 1 To 14
  .SeriesCollection(i).ChartType = xlColumnClustered 'histogramme
Next
End With
End Sub
Fichier joint.

A+
 

Pièces jointes

  • type graphique histo courbe(1).xls
    43.5 KB · Affichages: 55

Cousinhub

XLDnaute Barbatruc
Re : Graphique histogramme + courbe

Re-,

Bon, je me réponds à moi-même...

J'avais pas pensé à le faire en VBA, grave erreur....:rolleyes:

Tout d'abord, créer un graphique histogramme simple.

Sélectionner la série "var", "Format/Série de données sélectionnée...."
- onglet "Sélection de l'axe", choisir "Axe Secondaire" : OK

Puis faire "Graphique/Type de graphique", et sélectionner dans "Types personnalisés : Courbe - Histo 2 axes"

Et dérouler ce code (en faisant bien attention au nom du graphique....)

Code:
Sub ee()
Dim ChObj As ChartObject
Dim SerCol As Series
Set ChObj = ActiveSheet.ChartObjects("Graphique 9") 'Mef au nom du graphique
For Each SerCol In ChObj.Chart.SeriesCollection
    If SerCol.Name <> "var" Then
        SerCol.ChartType = xlColumnClustered
        SerCol.AxisGroup = xlPrimary
    End If
Next SerCol
End Sub

Et voili, voilou...

Si ça peut servir...

Maintenant, si une solution sans macro existe, je suis bien sûr preneur.

Bonne soirée à tous, et merci à ceux qui se seront penchés sur mon problème.

Edit : Merci beaucoup Job, tout content pareil, et effectivement, sans macro, pas évident. Pour info, ceux qui se mettent en courbe prennent aussi l'axe secondaire.
Bonne soirée
 

Misange

XLDnaute Barbatruc
Re : Graphique histogramme + courbe

Bonsoir
Sélectionne la plage A1:M15, fais ton graphique en histogramme.
Sélectionne les plages A1: M1 et A16:M16 (en maintenant la touche ctrl)
copie
sélectionne le graphique
collage spécial
ajouter les cellules comme nouvelle série, valeurs en ligne, nom de série dans la première colonne étiquettes axe des X dans la première ligne
ensuite clique sur cette série/mise en forme/axe secondaire.
 

Pièces jointes

  • type graphique histo courbe.xls
    68 KB · Affichages: 57
  • type graphique histo courbe.xls
    68 KB · Affichages: 80
  • type graphique histo courbe.xls
    68 KB · Affichages: 75

Efgé

XLDnaute Barbatruc
Re : Graphique histogramme + courbe

Bonjour bhbh :) , Bonjour Job :)
Une proposition sans VBA
Créer le graph histogramme avec les Noms
Aller dans les valeurs du graph et ajouter "a la main" une série : Nom Var Valeur ={200,200}
On a deux colonnes de 200 à droite des noms 1 et 2
Sélectionner une colonne et mettre en forme : Axe secondaire.
Sélectionner une colonne changer le type (le passer en ligne)
Retourner dans les valeurs du graph Changer les valeurs de Var en sélectionnant les vrais données.


Cordialement

EDIT Salut Misange
 

Pièces jointes

  • type graphique histo courbe(FG).xls
    39.5 KB · Affichages: 56

Cousinhub

XLDnaute Barbatruc
Re : Graphique histogramme + courbe

Bonsoir, Flo :)

J'avais regardé sur ton site, mais je n'avais rien trouvé à ce sujet....

Par contre, je vois bien que ton graphique correspond bien à ma demande, mais quand j'essaie de le refaire, je bute lors de la mise en courbe de la "variante"....

A quel moment mets-tu cette donnée en "courbe"?

En tout cas, merci pour cette aide.

Bonne soirée
 

Cousinhub

XLDnaute Barbatruc
Re : Graphique histogramme + courbe

Hi,

Bonsoir Efgé :)

Comme annoncé dans ma demande, les graphiques et moi....

So, même motif, même ....

J'y arrive pas, malgré tes explications....(et celles de Misange...)

Merci pour ton aide, je vais persévérer, car si vous y êtes arrivés, c'est que la solution existe, et donc, faut que je travaille un peu..

Merci encore, et bonne soirée
 

job75

XLDnaute Barbatruc
Re : Graphique histogramme + courbe

Re, hello Efgé,

L'intérêt d'une macro c'est qu'on ne se casse pas la tête.

On peut spécifier le type de graphique pour chaque série, par exemple :

Code:
Sub TypeSéries()
Dim a, i As Byte, t As Boolean
a = Array(6, 7, 15)
With ActiveSheet.ChartObjects(1).Chart
  For i = 1 To .SeriesCollection.Count
    t = IsError(Application.Match(i, a, 0))
    .SeriesCollection(i).ChartType = IIf(t, xlColumnClustered, xlLine)
  Next
End With
End Sub
Graphique courbe pour les séries n° 6 7 15, histogramme pour les autres.

Pas besoin d'axe secondaire...

Edit : hello Misange :)

A+
 
Dernière édition:

Misange

XLDnaute Barbatruc
Re : Graphique histogramme + courbe

Une fois que tu as collé la deuxième série, clic droit dessus/Modifier le type de graphique de la série de donnée et tu choisis courbe. C'est tout simple :).
Franchement faire une macro pour moi ce n'est pas plus simple que de faire le graphique combiné directement :) (hello Job :) )
 

job75

XLDnaute Barbatruc
Re : Graphique histogramme + courbe

Re,

Bien sûr Misange on peut sélectionner manuellement chaque série et lui donner la mise en forme que l'on veut.

Mais quand elles sont pitites pitites... et collées les unes contre les autres, pas évident :cool:

A+
 

Misange

XLDnaute Barbatruc
Re : Graphique histogramme + courbe

Re,

Pour sélectionner manuellement une série qui est très petite ou très collée aux autres : clic sur le graphique, onglet format -du graphique, menu déroulant en haut à gauche, sélectionner la série ! :) Ce même menu existe dans les versions 97-2003 d'excel également.
Curieusement beaucoup de gens ne le remarquent pas. Il permet pourtant de sélectionner tous les éléments d'un graphique.
 

Efgé

XLDnaute Barbatruc
Re : Graphique histogramme + courbe

Re à toutes et tous
...Mais quand elles sont pitites pitites... et collées les unes contre les autres, pas évident :cool:...

Pout selectionner les séries pitites pitites dans 2003, tu peux sélectionner une Grande-Grande, puis avec les felêches droite et gauche tu vas selcetionner séquentiellement chaque valeur de la série puis la série suivante etc....
Sous 2007 le problème est résolu Ouitls de Graphique / Groupe Selection active / liste déroulante te donnant directement accès à chaque composant

Cordialement

EDIt @Misange : Je ne l'ai jamais trouvé sous 2003 ce menu :rolleyes:
 
Dernière édition:

job75

XLDnaute Barbatruc
Re : Graphique histogramme + courbe

Bonjour le fil, le forum,

Effectivement Misange on peut sélectionner ce qu'on veut, merci pour ce complément.

Pour revenir au graphique du post #1 :

- mettre tout le graphique en histogramme (d'abord en courbe puis histogramme)

- sélectionner la dernière série (facile, elle est grande) et la mettre en courbe.

A+
 

Statistiques des forums

Discussions
312 457
Messages
2 088 564
Membres
103 882
dernier inscrit
jregis13