XL 2016 Modifier format etiquette de données graphique VBA

Hazardo

XLDnaute Nouveau
Bonjour,

Je souhaiterai modifier le format des étiquettes de données d'un graphique en fonction des paramètres région utilisateurs..

J'ai écrit ça comme macro mais ça ne fonctionne pas .. J'ai une erreur 445.

Sub Macro1()


Version = application.International(xlDecimalSeparator)

If Version = "," Then

ActiveSheet.ChartObjects("Graph1").Activate
ActiveChart.FullSeriesCollection(1).DataLabels.Select
Selection.NumberFormat = _
"_* +# ##0.0_)""m€"";_(* -# ##0.0""m€"";_(* ""-""_);_(@_)"

Else

ActiveSheet.ChartObjects("Graph1").Activate
ActiveChart.FullSeriesCollection(1).DataLabels.Select
Selection.NumberFormat = _
"_* +# ##0,0_)""m€"";_(* -# ##0,0""m€"";_(* ""-""_);_(@_)"

End If

End Sub

Avez-vous une solution ??

Merci

Bien cordialement,
 
Solution
Désolé. Je suis sous XL2007.
il vous faut trouver quelqu'un qui est XlL2016 ou mieux pour qu'il puisse voir et tenté de résoudre le problème.
Le mieux est de reposter le problème en faisant apparaître clairement 2016.

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir Hazardo,
A tester :
VB:
Sub Macro1()
Version = Application.International(xlDecimalSeparator)
If Version = "," Then
    ActiveSheet.ChartObjects("Graphique 2").Activate
    ActiveChart.Axes(xlCategory).TickLabels.NumberFormat = "_-* # ##0.00 €_-;-* # ##0.00 €_-;_-* ""-""?? €_-;_-@_-"
Else
    ActiveSheet.ChartObjects("Graphique 2").Activate
    ActiveChart.Axes(xlCategory).TickLabels.NumberFormat = "_-* # ##0,00 €_-;-* # ##0,00 €_-;_-* ""-""?? €_-;_-@_-"
End If
End Sub
Pour le code, utilisez les balises ( </> ) c'est plus lisible
 

Hazardo

XLDnaute Nouveau
Bonsoir Hazardo,
A tester :
VB:
Sub Macro1()
Version = Application.International(xlDecimalSeparator)
If Version = "," Then
    ActiveSheet.ChartObjects("Graphique 2").Activate
    ActiveChart.Axes(xlCategory).TickLabels.NumberFormat = "_-* # ##0.00 €_-;-* # ##0.00 €_-;_-* ""-""?? €_-;_-@_-"
Else
    ActiveSheet.ChartObjects("Graphique 2").Activate
    ActiveChart.Axes(xlCategory).TickLabels.NumberFormat = "_-* # ##0,00 €_-;-* # ##0,00 €_-;_-* ""-""?? €_-;_-@_-"
End If
End Sub
Pour le code, utilisez les balises ( </> ) c'est plus lisible

Hello sylvanu,

ça me met ça quand je test
1579290094769.png
 

Hazardo

XLDnaute Nouveau

sylvanu

XLDnaute Barbatruc
Supporter XLD
Il semblerat qu'il suffise de remplacer :
ActiveChart.FullSeriesCollection(1).DataLabels.Select
par
ActiveChart.SeriesCollection(1).DataLabels.Select

En PJ un essai, toujours en appuyant sur Appuyer. Ca appelle votre macro modifiée.
Mais je ne suis pas sur de la mise en forme que vous désiriez. Mais le concept marche. ;)
 

Pièces jointes

  • Copie de Axis formats2-2.xlsm
    26 KB · Affichages: 6

Hazardo

XLDnaute Nouveau
Il semblerat qu'il suffise de remplacer :
ActiveChart.FullSeriesCollection(1).DataLabels.Select
par
ActiveChart.SeriesCollection(1).DataLabels.Select

En PJ un essai, toujours en appuyant sur Appuyer. Ca appelle votre macro modifiée.
Mais je ne suis pas sur de la mise en forme que vous désiriez. Mais le concept marche. ;)

Re,

En fait tout fonctionne lorsque le graph n'est pas en cascade (nouveauté excel 2016). Du coup, lorsque que je passe le graph en cascade la macro ne veut plus s'executer .. Est-ce que vous avez une solution ?
 

Discussions similaires