Comment mettre en forme les étiquettes de données d'un graphique en vba ?

nbessard

XLDnaute Nouveau
Bonjour,

Je voulais d'abord remercier tous les membres actifs de ce forums, qui m'ont été d'une grande aide maintes fois !

Si j'ouvre un topic sur le forum c'est que je n'ai pas trouvé de réponse en recherchant dans les discussions existantes.

Alors, voilà mon problème :

A l'origine, je rencontre un problème sur la conservation de mise en formes de graphiques (notamment sur certaines étiquettes de données, quand elles ne sont appliquées que sur certains points) : lorsque j'enregistre le fichier, le ferme puis le rouvre, les données disparaissent... ???

Pour contourner le problème, je cherche à automatiser la mise en forme de ces fameuses étiquettes de donnée.

Dans le fichier joint, pour une série de données, je souhaiterais :
- Mettre la couleur de remplissage des étiquettes existantes en rouge clair
- Mettre la couleur de la police des étiquettes existantes en marron.

Je suis débutant en vba et je n'ai pas trouvé grand chose sur la manipulation des graphs en vba... Et j'avoue que l'enregistreur ne m'a pas été très utile !

Est-ce que quelqu'un saurait m'aider ?

D'avance merci pour votre aide.

NB
 

Pièces jointes

  • Pb MEF Etiquettes.xlsm
    15.6 KB · Affichages: 249

job75

XLDnaute Barbatruc
Re : Comment mettre en forme les étiquettes de données d'un graphique en vba ?

Bonjour nbssard, bienvenue sur XLD,

Et j'avoue que l'enregistreur ne m'a pas été très utile !

A priori je ne vois pas pourquoi, car il enregistre parfaitement les opérations successives :

- sélection du point concerné

- affichage de l'étiquette (DataLabel) de ce point

- sélection, coloriage de l'étiquette et de sa police.

Je ne peux en dire plus, n'ayant pas Excel 2007, ce serait bien de déposer le fichier converti en .xls.

A+
 

nbessard

XLDnaute Nouveau
Re : Comment mettre en forme les étiquettes de données d'un graphique en vba ?

Bonjour job75,

Merci d'avoir bien voulu jeter un coup d'oeil à mon problème.

Je te renvoie mon fichier converti en .xls pour que tu puisses voir.

Je te confirme qu'avec l'enregistreur, les actions de mise en forme sur les étiquettes de donnée n'ont pas été prises en compte (je ne les vois pas dans le code, je vois seulement les actions de sélection des datalabels...).

Je suis sous Excel 2007, cela viendrait-il de là ?
Si jamais cela marche chez toi, pourrais tu me donner un simple exemple de code que je puisse adapter ?

D'avance merci beaucoup

nbessard
 

Pièces jointes

  • Pb%20MEF%20Etiquettes(1).xls
    42.5 KB · Affichages: 262

job75

XLDnaute Barbatruc
Re : Comment mettre en forme les étiquettes de données d'un graphique en vba ?

Bonjour nbessard,

Au moins vous, vous n'êtes pas trop pressé :)

L'enregistreur de macro a enregistré les opérations dans le Module3.

J'ai mis quelques commentaires pour mieux repérer.

Bien sûr vous devrez très sérieusement simplifier et adapter ce code brut de fonderie.

A+
 

Pièces jointes

  • Pb MEF Etiquettes(1).zip
    12.6 KB · Affichages: 448

nbessard

XLDnaute Nouveau
Re : Comment mettre en forme les étiquettes de données d'un graphique en vba ?

bonjour job75

En effet, l'enregistreur a bien fonctionné pour vous, j'ai pu récupérer votre code sans problème !

Après l'avoir un peu épuré j'ai pu l'intégrer dans mon code perso.

Meric beaucoup de votre aide.

nbessard
 

job75

XLDnaute Barbatruc
Re : Comment mettre en forme les étiquettes de données d'un graphique en vba ?

Bonjour nbessard,

Juste une précision.

Je pense que votre enregistreur de macro ne vous donnait pas le code parce que l'étiquette n'avait pas été d'abord effacée.

A+
 

nbessard

XLDnaute Nouveau
Re : Comment mettre en forme les étiquettes de données d'un graphique en vba ?

Effacée ?

comment cela effacée ?

J'ai tenté de dérouler plusieurs fois, avec l'enregistreur toutes les actions, c'est à dire sélection du graphique, puis d'une série, ajout des étiquettes, et mise en forme des étiquettes, mais sans succès

J'ai lu sur un autre post que le "macro recorder" d'Excel 2007 avait quelques problèmes de myopie concernant les actions sur les graphiques, je suppose que ca vient de là !


En revanche, je n'ai toujours pas compris mon problème de base : la mise en forme des étiquettes de données n'est pas conservée : malgré l'enregistrement, à la réouverture, un partie de la MEF a disparu !

Il s'agit d'un document assez volumineux (50 feuilles à peu près, avec dans chacune 10 graphs... le fichier pèse 3 Mo, ce qui me semble exceptionnel au vu de la taille des fichiers habituels sur Excel 2007), peut-être est-ce la cause ? Quelqu'un a-t-il déjà rencontré ce problème ??
 

MJ13

XLDnaute Barbatruc
Re : Comment mettre en forme les étiquettes de données d'un graphique en vba ?

Bonjour Nbessard, Job


Il s'agit d'un document assez volumineux (50 feuilles à peu près, avec dans chacune 10 graphs... le fichier pèse 3 Mo, ce qui me semble exceptionnel au vu de la taille des fichiers habituels sur Excel 2007), peut-être est-ce la cause ? Quelqu'un a-t-il déjà rencontré ce problème ??

Quelques remarque:
  • Il est vrai que XL2007 avec l'enregistreur n'est pas aussi performant que XL2003 (surtout sur la manipulation d'objet).
  • 1 fichier de 50 feuilles avec graphiques de 3 Mo me semble pas très gros. Cela dépend du nombre de données que tu as. Personnellement, j'ai des fichiers de plus 10 Mo avec 1 graphique de 120 Courbes de 1000 points.
Faut peut-être arréter de se prendre la tête avec la taille des fichiers. Aujourdhui, les PC arrivent sans problèmes à les traiter (à moins d'avoir un 486Dx2 :)).
 

nbessard

XLDnaute Nouveau
Re : Comment mettre en forme les étiquettes de données d'un graphique en vba ?

Ben si tu le dis :p

Je travaille rarement avec des fichiers aussi "gros", c'est pourquoi je pensais que le problème venait de là.


N'empêche que je ne sais toujours pas d'où vient le problème, je vais continuer de creuser... !
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 318
Membres
103 176
dernier inscrit
jean.yvesjean.yves