Pb Numberformat dans une macro

Fermé
Azalee92 Messages postés 3 Date d'inscription jeudi 26 novembre 2015 Statut Membre Dernière intervention 29 novembre 2015 - Modifié par jordane45 le 27/11/2015 à 01:19
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 - 29 nov. 2015 à 17:51
Bonjour,

je m'adresse à vous car je ne parviens pas à résoudre un problème de format dans une macro.
Tout se passe bien lors de la création mais dès que je la répète la macro ne respecte pas le format de nom demandé initialemen et retient un format personnalisé.

Voici le code
With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _
        "Nombre de RAF")
        .Caption = "Jours RAF"
        .Function = xlSum
        .NumberFormat = "0,00"
    End With
    Range("G3").Select
    ActiveSheet.PivotTables("Tableau croisé dynamique1").CalculatedFields.Add _
        "Avancement", "='Quantité" & Chr(10) & "Totale" & Chr(10) & "Passée ' /'Quantité" & Chr(10) & "Prévue'", True
    ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Avancement"). _
        Orientation = xlDataField
    With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _
        "Somme de Avancement")
        .Caption = "% Avancement"
        .NumberFormat = "0%"

Pour le format de nombre au lieu d'obtenir 12,00 je retrouve 012 dans la cellule et pour le pourcentage au lieu de 10,00 % j'obtiens 10% et j'ai besoin de connaître les chiffres après la virgule.

Merci de votre aide


EDIT : Ajout de la coloration syntaxique.
Merci d'y penser à l'avenir.
A voir également:

3 réponses

f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
27 nov. 2015 à 09:11
Bonjour,

C'est peut-etre un probleme de separateur de decimale pour 12,00, essayez
    'decimale(s)
    Range("B4").NumberFormat = "0.00"


et pour les decimales %
    '%
    Range("B2").NumberFormat = "0.00%"
0
Azalee92 Messages postés 3 Date d'inscription jeudi 26 novembre 2015 Statut Membre Dernière intervention 29 novembre 2015
29 nov. 2015 à 15:42
Bonjour,
Merci pour votre réponse mais elle ne résout pas mon problème.

J'ai rectifié Range car dans mon cas je prend l'ensemble d'une colonne.

Si vous avez une autre suggestion, je prends toujours.
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
29 nov. 2015 à 17:51
Bonjour,

Ben avec l'enregistreur de macro, j'obtiens la meme chose pour une colonne du TCD !!!!

Sub Macro1()
'
' Macro1 Macro
'

'
    Range("B4").Select
    With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _
        "Moyenne de Température extérieure")
        .Caption = "Nombre de Température extérieure"
        .Function = xlCount
        .NumberFormat = "0.00"
    End With
End Sub
Sub Macro2()
'
' Macro2 Macro
'

'
    Range("B4").Select
    With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _
        "Nombre de Température extérieure")
        .NumberFormat = "0.00%"
    End With
End Sub
0