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 :

Changer un titre de colonne dans un tcd


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2014
    Messages : 271
    Points : 335
    Points
    335
    Par défaut Changer un titre de colonne dans un tcd
    Bonjour à tous,

    Voila je génère un TCD via une macro tout ce qu’il y a de plus classique.

    Le titre actuel de ma première colonne est "Nombres de 2014". Je voudrais remplacer ce titre par la valeur M1 de ma feuille "SaveExport".

    Est-ce quelqu’un a une idée ?

    Merci par avance

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 473
    Points : 493
    Points
    493
    Par défaut
    ben si tu test ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub test()
     
    Sheets("feuil1").Range("a1") = Sheets("SaveExport").Range("M1")
    End Sub
    Si dans M1 tu n'as pas le même nom qu'une autre colonne de titre de ton TCD alors pas de problème!?

    ou alors je ne comprends pas la question
    Cordialement,

    Jijie

  3. #3
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 762
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 762
    Points : 28 621
    Points
    28 621
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    N'ai je pas déjà répondu à la même question http://www.developpez.net/forums/d14...d/#post7907997 ?
    As-tu fait un test ?
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2014
    Messages : 271
    Points : 335
    Points
    335
    Par défaut
    Bonjour,

    Jijie c'est dans un TCD que je veux effectuer se changement de nom.

    Philippe, oui tu as répondu une première fois mais mon dernier message estresté sans réponse.

    Concernant le code que tu m'as donné il ne fonctionne pas, j'ai une erreur 404 sur la ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Set pvt = Feuil3.PivotTables(1)

  5. #5
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 762
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 762
    Points : 28 621
    Points
    28 621
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Ce ne serait pas plutôt une erreur 1004 ?
    Si c'est le cas, il est possible qu'il n'y ait pas de tableau croisé dynamique dans la feuille dont la propriété CodeName est Feuil3
    Tu peux aussi utiliser cette syntaxe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Set pvt = ThisWorkbook.Worksheets("Feuil3").PivotTables(1)
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2014
    Messages : 271
    Points : 335
    Points
    335
    Par défaut
    Bonjour;

    Avec le set que tu m'as envoyer ça fonctionne mais ça ne répond pas à ma question.

    Ce que ton code fait on peut le faire en ajoutant un .Name dans la macro qui crée mon TCD.

    Avec ton code le nom de ma nouvelle colonne est "Somme de CA" ce qui ne correspond pas à la cellule M1 de la feuille save export.

    Merci pour ton aide.

  7. #7
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 762
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 762
    Points : 28 621
    Points
    28 621
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Avec ton code le nom de ma nouvelle colonne est "Somme de CA" ce qui ne correspond pas à la cellule M1 de la feuille save export.
    Depuis le temps que tu participes à ce forum, il me semble que tu as déjà abordé ce type de question.
    En lieu et place de la constante "Somme de CA", il suffit d'aller chercher la valeur se trouvant sur la cellule M1 de la feuille nommée SaveExport, soit si cette feuille est sur le même classeur que le TCD
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    With pvt
    .DataPivotField.PivotItems(1).Caption = "Somme " & ThisWorkbook.Worksheets("SaveExport").Range("M1")
    End With
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  8. #8
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2014
    Messages : 271
    Points : 335
    Points
    335
    Par défaut
    Bonjour,

    Oui j'ai déjà abordé un problème similaire pour lequel tu m'avais grandement aider. J'en profite d’ailleurs pour te remercier un nouvelle fois .

    Je pense que le problème ne doit pas être compliquer mais je but sur un truc sans doute bête.

    Ton code fonctionne avec l'expression "somme" mais pas sans.

    J'ai testé ce code qui me renvoi une erreur 1004 "le nom du champ dynamique existe déjà".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub RenommerTitrePivotTable()
     Dim pvt As PivotTable
     Set pvt = ThisWorkbook.Worksheets("PresentationSoins").PivotTables(1)
     With pvt
    .DataPivotField.PivotItems(1).Caption = ThisWorkbook.Worksheets("SaveExport").Range("M1") ' Si une seule agrégation
     .CompactLayoutRowHeader = "Titre Ligne"
     .CompactLayoutColumnHeader = "Titre Colonne"
     End With
    End Sub
    Merci par avance pour ton aide

  9. #9
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Regarde si manuellement tu peux changer le nom identiquement à celui de la plage source. Tu auras la même erreur.
    Donc?
    Cordialement.
    J'utilise toujours le point comme séparateur décimal dans mes tests.

  10. #10
    Invité
    Invité(e)
    Par défaut Bonjour,
    avec l'enregistreur de macro!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub Macro2()
    '
    ' Macro2 Macro
    '
     
    '
        ActiveSheet.PivotTables("TDC").PivotFields("Affecté à").Caption = _
            "Affecté à toto"
    End Sub

  11. #11
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2014
    Messages : 271
    Points : 335
    Points
    335
    Par défaut
    J'ai pris la solution de Philipe et la remarque de mercatog.

    J'ai simplement changer le "Somme" par " " et ça marche parfaitement.

    Encore un problème de résolu.

    Merci à tous (surtout à Philipe pour ta patience et ta compréhension).

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

Discussions similaires

  1. Aligner les titres des colonnes dans un datagrid
    Par bonnet85 dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 02/04/2008, 16h01
  2. Changer les titres de colonnes
    Par gbrion dans le forum WinDev
    Réponses: 4
    Dernier message: 20/09/2007, 16h58
  3. Changer les noms de colonnes dans un formulaire
    Par cakeby dans le forum Access
    Réponses: 1
    Dernier message: 06/01/2006, 21h32
  4. Affichage du titre des colonnes dans un DBGrid
    Par Debure dans le forum C++Builder
    Réponses: 6
    Dernier message: 05/10/2005, 23h41
  5. [JTable] redimensionner et changer le titre des colonnes
    Par Ghost Dog dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 19/04/2005, 20h31

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