[Excel 2007]Histogramme variable evolutif

Résolu/Fermé
Pyvoudelet Messages postés 167 Date d'inscription jeudi 11 février 2010 Statut Membre Dernière intervention 22 novembre 2024 - 2 déc. 2010 à 23:33
Pyvoudelet Messages postés 167 Date d'inscription jeudi 11 février 2010 Statut Membre Dernière intervention 22 novembre 2024 - 9 mai 2011 à 20:52
Bonjour,

Je sais que j'abuse beaucoup de ce forum, mais vous êtes tellement plus compétent que moi!!


Cette fois ci ma demande n'est pas seulement de la programmation. C est carrément un modèle de graphique que je voudrais inventé j'ai l'impression.

Cela consisterait en un histogramme au la hauteur des colonnes est définie par une variable. Et la largeur est définie par une autre variable ! alors que jusqu'à présent je n ai trouvé que le moyen de faire un colone par série, sans prendre en compte un axe des abscisse.

Ce que je veux faire ressemble un peu à un diagramme de Pareto, dans le concept.

Comme je suis nul pour expliquer les choses, voici ci joint un fichier(.xls) avec un tableau de données de base et le graphique que je voudrais obtenir (dessiner a la main).

http://www.cijoint.fr/cjlink.php?file=cj201012/cijPiWTD0F.xls

MErci pour votre patience !!!
A voir également:

7 réponses

Raymond PENTIER Messages postés 58777 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 24 décembre 2024 17 259
3 déc. 2010 à 01:50
Bonjour.

Tu as parfaitement cerné le problème : Il faudrait inventer un nouveau type de graphique ...

Alors soumets ton souhait aux informaticiens-concepteurs de Microsoft Office.

Nous autres, simples utilisateurs comme toi, nous ne pouvons rien !
0
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
3 déc. 2010 à 10:41
Bonjour Pyvoudelet,
J'ai une idée qui me trotte dans ma tête, je regarde si c'est faisable, un peu de patience.
0
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
4 déc. 2010 à 23:50
Bonsoir,
Ma proposition dans le but de voir si cela vous conviendra !
Le fichier, voir sur feuille [Feuil2] : https://www.cjoint.com/?3mexWHQbfAa
Je complèterai la proposition à la suite de vos remarques.
0
Pyvoudelet Messages postés 167 Date d'inscription jeudi 11 février 2010 Statut Membre Dernière intervention 22 novembre 2024 12
6 déc. 2010 à 21:04
Bonjour à tous. Merci pour vos propositions.

JE reviens vers vous car j ai un probleme avec une procedure que j ai ecrite pour tracer un graph en m inspirant d ,une procedur duPingou. Cette procedure est appellé dans une autre, et permet de mettre a jour le graph. mon but initial, n etait de ne pas forcement changer les series a chaque fois mais uniquement remettre a jour leur valeur.

mais j ai un message d erreur " LA méthode "Xvalues" de l'objet "Series" a échoué" ....

voila procedure en question:

Sub MAJ_GraphA(nbser1 As Long, nbser2 As Long, lideb1 As Long)
Dim c As Long
ActiveSheet.Unprotect
With Sheets("Compare Products").ChartObjects("Graphique 10").Chart


.SeriesCollection(1).XValues = Sheets("Calcul 2.5").Range("D3:D" & lideb1 + nbser1)
.SeriesCollection(1).Values = Sheets("Calcul 2.5").Range("G3:G" & lideb1 + nbser1)

.SeriesCollection(2).XValues = Sheets("Calcul 2.5").Range("L3:L" & lideb1 + nbser2)
.SeriesCollection(2).Values = Sheets("Calcul 2.5").Range("O3:O" & lideb1 + nbser2)

ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End With

End Sub

appellée par :

Private Sub Worksheet_Calculate()
Dim ser1 As Long, ser2 As Long
ser1 = Sheets("Calcul 2.5").Range("A1")
ser2 = Sheets("Calcul 2.5").Range("I1")

MAJ_GraphA ser1, ser2, 3
MAJ_GraphB ser1, ser2, 28
MAJ_GraphC ser1, ser2, 53
MAJ_GraphD ser1, ser2, 78

End Sub

(4 sous procédure pour 4 graphiques....)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
Modifié par Le Pingou le 6/12/2010 à 21:43
Bonjour,
Ce que vous voulez faire n'est pas clair.
Si les séries ne changent pas et que seul les valeurs changent alors le graphique se met à jour automatiquement (pas besoin de code).
Exemple : toujours les composants n°1, 5, 6 et 9 et les valeurs (Cost) passent de 10,12,18 et 3% à 25,8,10 et 11%. Le graphique se met à jour automatiquement.

Salutations.
Le Pingou
0
Pyvoudelet Messages postés 167 Date d'inscription jeudi 11 février 2010 Statut Membre Dernière intervention 22 novembre 2024 12
6 déc. 2010 à 22:49
ben en fait ce qui change c est le nbre de composant (tjrs le meme probleme que mes autres posts) donc c est pour cela que je fais des plages qui varie (lideb1+nbser1, etc..)
0
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
6 déc. 2010 à 23:04
Bonjour,
Eh bien dans se cas vous devez supprimer l'ancienne série et la remplacer par la nouvelle.
Vous avez l'exemple [Sub MAJ_Graph_Bulle(nbser As Long, lideb As Long)] dans le classeur [Pyvoudelet_ccm_bul.xlsm].

Dans votre code il manque le code :
.SeriesCollection.NewSeries 

juste à la suite de la ligne
With Sheets("Compare Products")........

Note ne pas oublier de supprimer les anciennes séries ... !
0
Pyvoudelet Messages postés 167 Date d'inscription jeudi 11 février 2010 Statut Membre Dernière intervention 22 novembre 2024 12
6 déc. 2010 à 23:10
ok. jsutement je l avais supprimer en voulant passer outre la suppression de series. mais apparement c est inevitable.

MErci bien.
0
Pyvoudelet Messages postés 167 Date d'inscription jeudi 11 février 2010 Statut Membre Dernière intervention 22 novembre 2024 12
9 mai 2011 à 20:52
Nouveau dilemme mais avec les graphs radar, si y en a qui veulent s'essayer au problèmes.....

https://forums.commentcamarche.net/forum/affich-22041573-vba-graph-variable-selon-selection#p22041573
0