bonjour,

j'ai un TCD qui affiche des valeurs exprimées soit en nombre, soit en pourcentage.
Quand une valeur est en nombre, je souhaite l'afficher avec séparateur des milliers et sans décimale. En revanche, lorsqu'il s'agit d'une valeur en %, alors je souhaite l'afficher en % et à 1 décimale. Et si on sélectionne des grandeurs en nombre et en % alors j'afficher en nombre. Mon code est le suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
    'modification de l'axe verticale principal en fonction de l'unite de la (ou des) grandeur(s) selectionnee(s)
    If (isNombre = False And isPourcen = True And isUnknown = False) Then
        ActiveChart.Axes(xlValue).TickLabels.NumberFormat = "0.0%" 'axe vertical principal en % avec 1 decimale
        ActiveSheet.PivotTables("TCD1").PivotFields(" 202002").NumberFormat = "0.0%" 'affichage du TCD en pourcentage avec 1 decimale
        ActiveSheet.PivotTables("TCD1").PivotFields(" 202003").NumberFormat = "0.0%" 'affichage du TCD en pourcentage avec 1 decimale
    Else
        ActiveChart.Axes(xlValue).TickLabels.NumberFormat = "#*##0" 'axe vertical principal en nombre avec separateur des milliers et sans decimale
        ActiveSheet.PivotTables("TCD1").PivotFields(" 202002").NumberFormat = "# ##0" 'affichage du TCD avec separateur des milliers et sans decimale
        ActiveSheet.PivotTables("TCD1").PivotFields(" 202003").NumberFormat = "# ##0" 'affichage du TCD avec separateur des milliers et sans decimale
    End If
les lignes

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
        ActiveSheet.PivotTables("TCD1").PivotFields(" 202002").NumberFormat = "0.0%" 'affichage du TCD en pourcentage avec 1 decimale
        ActiveSheet.PivotTables("TCD1").PivotFields(" 202003").NumberFormat = "0.0%" 'affichage du TCD en pourcentage avec 1 decimale
 
        ActiveSheet.PivotTables("TCD1").PivotFields(" 202002").NumberFormat = "# ##0" 'affichage du TCD avec separateur des milliers et sans decimale
        ActiveSheet.PivotTables("TCD1").PivotFields(" 202003").NumberFormat = "# ##0" 'affichage du TCD avec separateur des milliers et sans decimale
font planter Excel qui se ferme. Sans ces lignes, la macro fonctionne très bien. Voyez-vous où se situe la cause du problème svp ?

Merci bcp

Bonne soirée