Bouton macro passage Euros à texte / texte à Euros

Bonjour le forum,

J’aimerai avoir un unique bouton macro qui me permettrai de modifier le format de la somme des valeurs de mon Tcd (un clic je passe en euros et si je reclique je passe en format personnalisé > à 1 alors ok)

Le code réalisé pour le passage en euro est le suivant (NB je rajoute les totaux du Tcd) :

Sub Macro4()
' Macro4 Macro
    With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _
        "[Measures].[Somme de CPTA]")
        .NumberFormat = "# ##0.00"
    End With
    With ActiveSheet.PivotTables("Tableau croisé dynamique1")
        .ColumnGrand = True
        .RowGrand = True
    End With
End Sub

Le code réalisé pour le passage au format personnalisé est le suivant (NB je supprime les totaux du Tcd) :

Sub Macro5()
' Macro5 Macro
    With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _
        "[Measures].[Somme de CPTA]")
        .NumberFormat = "[>0]""ok"";Standard"
    End With
    With ActiveSheet.PivotTables("Tableau croisé dynamique1")
        .ColumnGrand = False
        .RowGrand = False
    End With
End Sub

Ce code ne fonctionne pas alors qu’il a été créé via l’enregistreur de macro, il bloque à :

.NumberFormat = "[>0]""ok"";Standard"

Merci d’avance à celui qui me permettra d’avancer, d’une part pour résoudre ce problème du format personnalisé, mais également pour me créer le code pour le bouton souhaité,

Cordialement,

Bonjour,

Remplace Standard par General.

Merci Jean éric, cela fonctionne.

J'étais passé par l'enregistreur de macro, et n'ayant aucun niveau en vba je te remercie pour cette précision.

Cordialement,

Re,

Merci. Pense à clore le sujet.

Bonne journée.

Merci mais ta réponse ne suffit pas à clôturer le sujet.

En effet j'ai deux codes macro distincts que je voudrais faire fonctionner en un seul code qui permettrait le passage de mon tableau en Euros quand il est en texte et inversement.

Merci d'avance pour vos propositions

Bonjour,

et bien tu testes .NumberFormat et selon le résultat tu fais l'un ou l'autre non ?

eric

Bonjour,

Oui c'est cela sauf que je ne saurais pas l’écrire cette macro lol étant nul en vba.

Les codes trouvés auparavant se faisait par le biais de l'enregistreur de macro,

Cordialement,

If ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("[Measures].[Somme de CPTA]").NumberFormat = "# ##0.00" Then
    'affichage 1
Else
    'affichage 2
End If

Merci beaucoup,

Cela fonctionne

Cordialement,

Rechercher des sujets similaires à "bouton macro passage euros texte"