VBA formater axe

pascal_bidouille

XLDnaute Junior
Hello,

J'ai un graphe dans excel créé par une macro.
Je souhaite modifier le format des date sur l'axe X.

Quand j'enregistre une macro et je fais la modif à la main, j'obtiens le code :
Code:
Sub Macro3()
'
' Macro3 Macro
'

'
    ActiveSheet.ChartObjects("Graphe Total").Activate
    ActiveChart.Axes(xlCategory).Select
    Selection.TickLabels.NumberFormat = "jj/mm/aa;@"
End Sub

Mais bizarrement si j'essaie ensuite d'exécuter cette macro, j'ai un message d'erreur "propriété ou methode non gérée par l'objet sur " Selection.TickLabels"

Des idées ?
 

pascal_bidouille

XLDnaute Junior
Re : VBA formater axe

Oui même résultat en une ligne.
Avec quelques tests de plus, j'ai fait :

Code:
            ActiveSheet.ChartObjects("Graphe Total").Activate
    ActiveChart.Axes(xlPrimary).Select
    Set monaxe = ActiveChart.Axes(xlPrimary)
    Set meslabels = monaxe.TickLabels
   monformat = meslabels.NumberFormat
    
    meslabels.NumberFormat = "jj/mm/aa;@"

Je constate qu'il bloque sur la dernière ligne.
il semble que pour une raison X le numberformat ne soit pas modifiable ...
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : VBA formater axe

Ça c'est peut être normal: la propriété NumberFormat d'un objet TickLabels n'est pas un objet.
Pouvez vous affecter votre "jj/mm/aa;@" à MesLabels au lieu de cela ?

Vous avez déjà répondu entre temps je vois.

Ça devrait marcher. essayez l'exemple donné dans l'aide :
Worksheets("sheet1").ChartObjects(1).Chart _ .Axes(xlValue).TickLabels.NumberFormat = "0.00"
 
Dernière édition:

Statistiques des forums

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