Autre type de graphique dans chartspace

J

Jack

Guest
Bonsoir le forum
Merci de nous être revenu en pleine forme

Grâce à Michel et ses graphique chartspace j'avance dans mon projet et il vient une question :
Est il possible de faire ce type de graphique dans un chartspace avec le cumul des deux barres qui s'affichent au dessus


Dossier ci joint

Merci pour votre aide

Slts
Jack [file name=graph_20060128195100.zip size=2978]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/graph_20060128195100.zip[/file]
 

Pièces jointes

  • graph_20060128195100.zip
    2.9 KB · Affichages: 208

MichelXld

XLDnaute Barbatruc
rebonsoir Jack


si on reprend l'exemple initial :

Lien supprimé


tu peux remplacer

With Cht
.Type = C.chChartTypeColumnClustered 'type de graphique:Barres
.HasLegend = True 'permet l'affichage des légendes
.Legend.Position = chLegendPositionBottom 'afichage des légendes sous le graphique
End With

par

With Cht
.Type = C.chChartTypeColumnStacked 'type de graphique:histogramme empilé
.HasLegend = True 'permet l'affichage des légendes
.Legend.Position = chLegendPositionBottom 'afichage des légendes sous le graphique
End With



bonne soirée
MichelXld
 
J

JACK

Guest
Merci Michel c'est tout simplement magnifique
Et juste une dernière faveur
Peut on avoir le total des barres qui s'affichent au dessus (ex barre du lundi = 155 pour 67+88)

Merci pour toute l'aide déjà apportée

Bonne soirée à tous
Slats
Jack
 

MichelXld

XLDnaute Barbatruc
bonsoir jack

je n'ai pas trouvé de solution 'naturelle' pour afficher un cumul au dessus des histogrammes empilés

j'ai donc rusé en ajoutant une série cachée qui contient les valeurs cumulées

Cela fonctionne mais je trouve que la qualité d'affichage du graphique est grandement diminuée :
Les histogrammes empilés ont un aspect 'tassé' car la série cachée prend toute la place deans la partie haute du graphique
Les axes horizontaux doivent etre systématiquement masqués

...on ne peut pas tout avoir ...;o)


bonne soirée
MichelXld [file name=ChartSpace_HistoEmpile_et_affichageCumul.zip size=14477]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/ChartSpace_HistoEmpile_et_affichageCumul.zip[/file]
 

Pièces jointes

  • ChartSpace_HistoEmpile_et_affichageCumul.zip
    14.1 KB · Affichages: 367
J

JACK

Guest
Merci Michel pour ta réponse
Effectivement ce n'est pas très naturel tant pis je vais faire sans cumul car la graphique écrasé n'est guère joli
Merci pour toutte l'aide apportée mon projet devient intéressant et comme à chaque étape il y a de nouvelles découvertes ......
En revanche peut on imprimer le grahique issu de l'USF si oui euh ben c'est à dire oui la voilà la question : Comment?

Slts
Jack
 

MichelXld

XLDnaute Barbatruc
bonjour Jack

j'espere que cet exemple pourra t'aider


Private Sub CommandButton2_Click()
Dim Gr As OWC.ChartSpace
Dim Largeur As Long, Hauteur As Long
Dim Ws As Worksheet
Dim nomImage As String

nomImage = 'C:\\\\\\\\grapheTemporaire.gif'
Largeur = 560
Hauteur = 480

Application.ScreenUpdating = False
'export du ChartSpace au format image Gif
Set Gr = Me.ChartSpace1
Gr.ExportPicture nomImage, 'gif', Largeur, Hauteur

'ajout d'une feuille dans le classeur , pour contenir l'image
'qui va etre imprimée
Set Ws = Worksheets.Add
Ws.Pictures.Insert(nomImage).Select
Ws.PrintOut 'impression


Application.DisplayAlerts = False
Ws.Delete 'suppression feuille
Application.DisplayAlerts = True

Kill nomImage 'suppression image
Application.ScreenUpdating = True
End Sub




bonne journée
MichelXld
 
J

jack

Guest
Bonsoir le forum bonsoir Michel

Superbe ton impression du usf
Il me manque deux réglages :

Le graphique en mode paysage et non portrait

Peut on rajouter un titre qui serait issu d'un label se trouvant au dessus par exemple

Merci en tout cas pour l'aide déjà apportée
Bonne soirée

Slts
Jack
 

MichelXld

XLDnaute Barbatruc
bonsoir Jack

merci pour ton message

l'adaptation pour afficher un titre

With Cht
.Type = C.chChartTypeColumnClustered 'type de graphique:Barres
.HasLegend = True 'permet l'affichage des légendes
.Legend.Position = chLegendPositionBottom 'afichage des légendes sous le graphique
.HasTitle = True
.Title.Caption = 'mon titre' 'Label1
.Title.Font.Color = RGB(255, 0, 255)
.Title.Font.Underline = True
.Title.Font.Bold = True
.Title.Font.Size = 14
.Title.Position = chTitlePositionTop

End With


pour l'impression en mode paysage

Private Sub CommandButton2_Click()
Dim Gr As OWC.ChartSpace
Dim Largeur As Long, Hauteur As Long
Dim Ws As Worksheet
Dim nomImage As String

nomImage = 'C:\\grapheTemporaire.gif'
Largeur = 560
Hauteur = 480

Application.ScreenUpdating = False
'export du ChartSpace au format image Gif
Set Gr = Me.ChartSpace1
Gr.ExportPicture nomImage, 'gif', Largeur, Hauteur

'ajout d'une feuille dans le classeur , pour contenir l'image
'qui va etre imprimée
Set Ws = Worksheets.Add
Ws.PageSetup.Orientation = xlLandscape
Ws.Pictures.Insert(nomImage).Select
Ws.PrintOut 'impression


Application.DisplayAlerts = False
Ws.Delete 'suppression feuille
Application.DisplayAlerts = True

Kill nomImage 'suppression image
Application.ScreenUpdating = True
End Sub


bonne soirée
MichelXld

Message édité par: michelxld, à: 09/02/2006 19:52
 
J

jack

Guest
Bonsoir tous

Encore de l'excellent travail mon cher Michel

Quels sont les codes pour les différentes couleurs de la palette (Rgb(255 ,0 255))pour le violet mais les autres couleurs ?

Y a t il un listing ou une façon de tous les récupérer ?

Bonne soirée
Slts
Jack
 

MichelXld

XLDnaute Barbatruc
bonsoir Jack

merci pour ton message


ci joint un exemple qui permet de récupérer le code RGB(Red ,Green, Blue) d'une couleur spécifique

Lien supprimé

Lien supprimé

en déplaçant les curseurs R , G et B tu modifies la couleur du bouton , et la valeur associée est affichée ( ainsi que l'equivalence en Long et HEX )


bon week end
MichelXld

Message édité par: michelxld, à: 10/02/2006 20:30
 
J

jack

Guest
Bonsoir le forum et bonsoir Michel

Merci pour ce dépannage sur les couleurs cela me sera très utile pour les graphiques mais aussi pour d'autres applications
Une petite question concernant le graphique quel code permet de centrer le graphique sur la page
j'ai agrandi le graphique après être passé au format paysage mais maintenant je voudrais qu'il soit centré verticalement et horizontalement est ce possible ?

Slts

Jack
 

MichelXld

XLDnaute Barbatruc
bonjour Jack

j'espere que cette adaptation répondra à ta demande pour centrer l'image du graphique lors de l'impression

Private Sub CommandButton2_Click()
Dim Gr As OWC.ChartSpace
Dim Largeur As Long, Hauteur As Long
Dim Ws As Worksheet
Dim nomImage As String

nomImage = 'C:\\\\\\\\grapheTemporaire.gif'
Largeur = 560
Hauteur = 480

Application.ScreenUpdating = False
'export du ChartSpace au format image Gif
Set Gr = Me.ChartSpace1
Gr.ExportPicture nomImage, 'gif', Largeur, Hauteur

'ajout d'une feuille dans le classeur , pour contenir l'image
'qui va etre imprimée
Set Ws = Worksheets.Add
Ws.PageSetup.Orientation = xlLandscape
Ws.Pictures.Insert(nomImage).Select

Ws.PageSetup.CenterHorizontally = True
WS.PageSetup.CenterVertically = True


Ws.PrintOut 'impression

Application.DisplayAlerts = False
Ws.Delete 'suppression feuille
Application.DisplayAlerts = True

Kill nomImage 'suppression image
Application.ScreenUpdating = True
End Sub



bonne journée
MichelXld
 
J

JACK

Guest
Bonjour le forum bonjour Michel

Une nouvelle fois merci pour ton aide
Je voudrais pouvoir réduire la police de caractères des valeurs sur le graphique à 8
j'ai réussi à le faire sur un graphique normal mais pas en vba il me faut positionner 'size = 8' quelque part mais où ?
Peut m'aider à résoudre ce soucis

Merci pour tout

Slts
Jack