|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre actif
![]() Inscription : juillet 2006 Messages : 295 ![]() |
Bonjour à tous,
J'avais fait une macro (sans doute pas optimale) qui automatisait les titres de graphiques en fonction de la date contenu dans le titre d'un fichier externe. Cela marchait très bien sous Excel 2000. Depuis quelques jours je suis passé sous Excel 2007 et cette macro ne fonctionnait plus. Quelques détails mineurs à modifier et elle compile de nouveau. Cependant, il subsiste un petit problème : les titres de mes graphiques n'apparaissent plus sur les graphiques... En fait quand je vais sur les graphiques, la zone de titre est bien là, et quand je sélectionne cette zone je vois le texte qui a bien été actualisé. J'ai pensé à la propriété Color ou à ColorIndex mais en les modifiant rien n'a changé. Voici mon code : Code :
Si quelqu'un voit une erreur dans ce code, je suis preneur. Merci d'avance ! |
||
|
|
00
|
|
|
#2 | |
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Bonjour,
Il y a beaucoup de choses de changées en ce qui concerne les graphiques avec XL2007. Le mieux est de te servir de l'enregistreur de macros pour obtenir ce que tu souhaites.
__________________
Cordialement. Daniel Citation:
|
|
|
00
|
|
|
#3 | ||
![]() ![]() |
Utiliser les Select , Active , Selection .. est une mauvaise idée.. essai déjà :
Code :
__________________
page à bbil : dernières entrées : Débuter en VB6 Mes contributions en téléchargement Les pages VB : FAQs, Tutoriels VB, Outils , Sources, WIKI Impératif "A LIRE AVANT DE POSTER"
|
||
|
00
|
|
|
#4 | ||
|
Membre actif
![]() Inscription : juillet 2006 Messages : 295 ![]() |
Bonjour,
Merci à vous deux pour vos réponses. Je vais surement suivre le conseil de Daniel C. en repassant de nouveau par l'enregistreur de macro. Pour le conseil de bbil, il s'agit donc de remettre à chaque instruction le "chemin complet" ? Ca donnerait un truc de ce genre : Code :
|
||
|
|
00
|
|
|
#5 | |||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
bbil a raison dans l'absolu. Pour être complet, il faudrait même mettre :
Code :
Application.ThisWorkBook.Sheets("Feuille1").ChartObjects("Graphique 6") Ton code devient : Code :
__________________
Cordialement. Daniel Citation:
|
|||
|
01
|
|
|
#6 | |
![]() ![]() |
Citation:
Car dans ce cas la tu ne peu être sur d'agir sur le bon classeur ...
__________________
page à bbil : dernières entrées : Débuter en VB6 Mes contributions en téléchargement Les pages VB : FAQs, Tutoriels VB, Outils , Sources, WIKI Impératif "A LIRE AVANT DE POSTER"
|
|
|
10
|
|
|
#7 | |
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Tu as raison dans l'absolu. Cependant, tu peux coller ta macro dans le mauvais projet et "Thisworkbook" est une fausse sécurité. La seule façon d'être sûr est d'utiliser le nom du classeur.
Il faut faire une part pour la facilité d'emploi. Les objets "ActiveWorkbook", "Activesheet" existent, bien qu'on puisse s'en passer la plupart du temps.
__________________
Cordialement. Daniel Citation:
|
|
|
10
|
|
|
#8 | ||||||
|
Membre actif
![]() Inscription : juillet 2006 Messages : 295 ![]() |
Merci pour ces explications complémentaires !
J'ai essayé par l'enregistreur de macros de modifier mon titre et voici ce que j'obtiens en brut : Code :
Code :
J'ai d'ailleurs essayé de reprendre tout à zéro et le code suivant me met une erreur d'éxécution 438 "Propriété ou méthode non gérée par cet objet" au premier .ChartTitle.Text : Code :
Je patauge un peu... |
||||||
|
|
00
|
|
|
#9 | |
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Décidément, l'enregistreur de macros 2007 est en dessous de tout. Dis-moi ce que tu veux dans ton titre et avec quelles couleurs (en français, pas en VBA).
__________________
Cordialement. Daniel Citation:
|
|
|
00
|
|
|
#10 |
|
Membre actif
![]() Inscription : juillet 2006 Messages : 295 ![]() |
J'aurais voulu un titre sur deux lignes :
La première ligne avec du texte seulement comme "Nombre de gens (vivants)" Et la deuxième avec "- situation au 4 novembre 2011-" avec la date dépendant du nom de fichier que j'ouvre au début de la macro et qui se nomme par exemple "FICHIER 2011-11-04.XLS". La première ligne, je l'aurais aimée grosso modo écrite en Arial Noir et taille 11, et la deuxième ligne en Arial Noir Italique et taille 9. C'est à peu près ce que j'avais dans ma première macro. |
|
|
00
|
|
|
#11 | |||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Ceci fonctionne pour moi. Reste à savoir dans quel classeur se trouve ton graphique. "ThisWorkbook" désigne le classeur dans lequel se trouve la macro. S'il se troouve dans un autre classeur, dis-le.
Code :
__________________
Cordialement. Daniel Citation:
|
|||
|
00
|
|
|
#12 |
|
Membre actif
![]() Inscription : juillet 2006 Messages : 295 ![]() |
J'ai retrouvé un titre en couleur et non plus "en blanc" avec ce code, merci !
J'ai remis mon titre "dynamique" et cela fonctionne également. Néanmoins, tout est en police 9.5, et pas de gras ni d'italique. Damned... Mais ça progresse ! ![]() Edit : ThisWorkBook représente bien le classeur qui contient cette macro. |
|
|
00
|
|
|
#13 | |||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Regarde ici :
Code :
__________________
Cordialement. Daniel Citation:
|
|||
|
00
|
|
|
#14 |
|
Membre actif
![]() Inscription : juillet 2006 Messages : 295 ![]() |
Oups, c'est une erreur de copie lors de l'anonymisation de mon programme... C'est bien N:\MonChemin\... et non C:\...
Quant à NomFichier, ai-je besoin de l'initialiser étant donné que je fais ça ligne 25 : ? |
|
|
00
|
|
|
#15 | ||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Citation:
__________________
Cordialement. Daniel Citation:
|
||
|
00
|
|
|
#16 |
|
Membre actif
![]() Inscription : juillet 2006 Messages : 295 ![]() |
Je t'en paierais bien un pour te remercier du temps passé sur mon problème mais les e-cafés ne sont pas encore très appréciés alors... bon café !!
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com