VBA - Aide à la mise en forme d'un graphique

Pabl0

XLDnaute Nouveau
Bonjour à toutes et à tous,

Je me suis lancé de le VBA depuis peu et les graphiques me posent pas mal de problèmes dont un que je n'ai pas réussi à résoudre malgré mon ami Google.

J'essaie de faire une courbe avec deux aires (une verte et une rouge) sur le même graphique pour représenter une zone "stable" et l'autre "instable".

J'ai fait un graphique "à la main" (GRAPH1) et j'aimerais faire un graphique similaire en VBA.
Je créée 3 séries : une pour la courbe de données, une pour l'aire "stable" et la dernière pour l'aire "instable".
Le problème c'est que je me retrouve avec un drôle d'axe des abscisses que je n'arrive pas à modifier.

J'ai essaye de le contraindre avec
.Axes(xlCategory, xlPrimary).MinimumScale = 0
.Axes(xlCategory, xlPrimary).MaximumScale = 30
mais ça ne marche pas.

Avez-vous une idée pour résoudre ça ?

Merci beaucoup.

Pablo
 

Pièces jointes

  • Edition_Graphique.xlsm
    39 KB · Affichages: 32

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : VBA - Aide à la mise en forme d'un graphique

Bonsoir Pabl0 et bienvenue sur XLD :), bonsoir Efgé :)

Pas sûr d'avoir bien compris.

J'ai essayé de modifier le graphique de la feuille '01' pour qu'il ressemble à celui de la feuille 'GRAPH1'.

Les modifications faites (sans VBA et avec Excel 2010):

  • Modification du type de la série 1: passer de 'nuage de points' en ''courbes avec marques'
  • Modification du type de la série 2: passer de 'aires empilées' en 'aires' simple.
  • Modification du type de la série 3: passer de 'aires empilées' en 'aires' simple.
  • Modifier l'ordre des séries pour voir simultanément les deux graphiques en 'aires' .
  • Mettre une couleur de remplissage 'vert' pour un des graphiques en 'aires'
  • Mettre une couleur de remplissage 'rouge' pour l'autre graphique en 'aires'
  • Jouer sur la transparence des couleurs des deux graphiques en 'aires' pour conserver une couleur vert pâle et une couleur rouge pâle et distinguer le quadrillage vertical.
  • Insertion de deux formes rectangulaires (fond et contour transparent) pour y inscrire 'stable' et 'instable'

ça ne répond peut-être pas à votre question :confused:
 

Pièces jointes

  • Pabl0-Edition_Graphique v1.xlsm
    40.2 KB · Affichages: 32
Dernière édition:

Efgé

XLDnaute Barbatruc
Re : VBA - Aide à la mise en forme d'un graphique

Bonjour Pabl0
Je n'ai pas beaucoup mis le nez dans ton code.
Il se trouve qu'en utilisant un graph "courbe" à la place d'un "nuage de point" pour la série 1 de ton exemple, tout reviens dans l'ordre.
Cordialement
Edit Salut Mapomme :)

 
Dernière édition:

Pabl0

XLDnaute Nouveau
Re : VBA - Aide à la mise en forme d'un graphique

Bonsoir à vous deux,

Merci pour vos réponses. J'avais oublié de faire le ménage dans les macros, c'est chose corrigée. En effet en changeant le type de graphique pour la série 1 (qui correspond à ma courbe), tout rentre dans l'ordre. Parfois on cherche longtemps les petites modifs -_-

J'ai une question d'apparence encore une fois toute bête (en espérant que la réponse soit toute bête ...). J'aimerais que la valeur des abscisses soit sur une marque plutôt qu'entre deux. Manuellement on peut faire "Position Axis : On Tick Marks" et en VBA je crois que ça se commande avec .Axes(xlCategory).AxisBetweenCategories = False. Mais ça ne marche pas. Auriez-vous une idée ?

Egalement j'aimerais imposer l'échelle sur l'axe des ordonnées et j'essaie d'utiliser ".Axes(x1Value, xlPrimary).MajorUnit = 1" et là encore ça ne marche pas. Si là aussi vous pouviez m'aider ça serait génial !

J'ai mis une v2 du fichier et vous trouverez la section commentée qui me pose problème :
'CE QUI NE MARCHE PAS -----------------------------------------
'.Axes(x1Value, xlPrimary).MajorUnit = 1
'.Axes(xlCategory).AxisBetweenCategories = False
'CE QUI NE MARCHE PAS -----------------------------------------

Pour ce qui est du texte flottant je m'occuperai de ça plus tard, c'est relativement accessoire.

Merci encore,

Pablo
 

Pièces jointes

  • Pabl0-Edition_Graphique v2.xlsm
    34.3 KB · Affichages: 28

Pabl0

XLDnaute Nouveau
Re : VBA - Aide à la mise en forme d'un graphique

D'accord Efgé je vais un peu bosser sur mes quelques problèmes et je viendrai reposer mes questions dans un autre sujet !
Dans l'état c'est vrai qu'on voit mal l'intérêt d'utiliser le VBA (qui est vraiment pas pratique pour les graphiques) mais il va falloir que j'en génère à la pelle !
 

Efgé

XLDnaute Barbatruc
Re : VBA - Aide à la mise en forme d'un graphique

Re
Quand on a des graphiques à générer " a la pelle" il est, à mon humble avis, plus efficace d'utiliser un modèle, avec importation des données dans un tableau ou dans une plage dynamique.
Enfin, j'dis ça, j'dis rien.

Bon courage
Cordialement
 

Discussions similaires

Réponses
0
Affichages
157

Statistiques des forums

Discussions
312 339
Messages
2 087 403
Membres
103 537
dernier inscrit
alisafred974