IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

.numberformat "# ##0" devient "#\ ##0" ? [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    817
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 817
    Par défaut .numberformat "# ##0" devient "#\ ##0" ?
    Bonjour,

    J'ai réalisé une petite macro perso, qui me permet en un clic mettre la mise en forme que j'utilise le plus souvent sur mes champs des TCD
    Petit problème il n'applique pas le bon format mais créé un format personnalisé.

    J4ai testé sur une cellule normale (hors TCD) et j'ai le même souci.
    La macro
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Sub Macro1()
        With Range("d8")
            .NumberFormat = "# ##0"
        End With
    End Sub
    Mais par la suite le format constaté est #\ ##0 le nombre s'affiche 6516 905 au lieu de 6 516 905.

    auriez vous une idée du problème

    Merci
    Denis

  2. #2
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Bonjour,
    essayes ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .NumberFormat = "#,##0"
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  3. #3
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    817
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 817
    Par défaut
    Nickel merci Dom.

  4. #4
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    pas de quoi, l'enregistreur t'aurai donné
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub Macro1()
    '
    ' Macro1 Macro
    '
     
    '
        Selection.NumberFormat = "#,##0"
    End Sub
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  5. #5
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    817
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 817
    Par défaut
    en effet.

    mais j'ai fait cette petite macro au départ pour changer le format des champs des TCD

    et curieusement dans ce contexte, l'enregistreur ne met pas la virgule

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
        Range("H3").Select
        With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _
            "Somme de b")
            .NumberFormat = "# ##0"
        End With
    Pour info mon code complet que j'ai mis dans mes macros perso, et bien pratique pour mettre au propre les différents champs des tcd en un clic par champ
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    Sub Format_champ_TCD()
    '
    ' Cette macro identifie le nom du champ de la cellule active et applique la mise en forme nombre
    ' avec séparateur de milier et 0 décimales
    '
    Dim TCD As String
    Dim Champ_TCD As String
     
    On Error GoTo 0
     
    ActiveCell.Select
    TCD = ActiveCell.PivotCell.Parent 'nom du TCD
    Champ_TCD = ActiveCell.PivotCell.DataField ' nom du champ
     
        With ActiveSheet.PivotTables(TCD).PivotFields(Champ_TCD)
        .NumberFormat = "#,##0"
        End With
    End Sub

  6. #6
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    tant qu'on y est, tu crois que cette ligne est utile
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ...
    ActiveCell.Select
    ...
    essayes en l'enlevant
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  7. #7
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Bonjour !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .NumberFormatLocal = "# ##0"

    _________________________________________________________________________________________________________
    Je suis Paris, Charlie, Bruxelles, …

  8. #8
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    817
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 817
    Par défaut
    Dom, bien sûr le select ne sert à rien, c'était un reste de quand j'essayais de faire marcher le bazar.

    MarL : dans mon context (champ d'un TCD .NumberFormatLocal me renvoie une erreur 38

    Denis

+ Répondre à la discussion
Cette discussion est résolue.

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo