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 :

Segment (ou slicer) ne détecte pas les autres TCDs [XL-2013]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Developpeur d'outils de pilotage
    Inscrit en
    Décembre 2014
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Developpeur d'outils de pilotage

    Informations forums :
    Inscription : Décembre 2014
    Messages : 19
    Par défaut Segment (ou slicer) ne détecte pas les autres TCDs
    Bonjour à tous,

    J’espère que vous pourrez m’aider ou m’aiguiller sur mon problème. J’ai créé une macro qui récupère des données, les traitent, les trient et suppriment le superflu. Dans un second temps la macro créé plusieurs TCDs sur plusieurs feuilles (ratio : 1 feuille = 1 TCD). Jusque-là tous se passe à merveille (évidemment c’est le résultat de nombreuse heures de travail puisque j’ai débuté sur VBA il y a un mois). Bref, pour expérimenter, « à la main », j’ai créé un segment (ou slicer) sur mon premier TCD. Et lorsque j’ai cherché à connecter mon segment aux autres TCDs, la fenêtre qui liste les TCD m’a présenté que mon premier TCD, alors que j’ai 13 autres TCDs (voir illustration ci-dessous, potentiellement plus explicite).

    Nom : Capture.PNG
Affichages : 1429
Taille : 11,6 Ko

    J’ai posté cette discussion sur « macros et VBA Excel », car je souhaite créer le segment par l’intermédiaire de ma macro. J’ai essayé de le faire, mais ce problème survient à chaque fois, le segment ne détecte pas mes autres TCDs.

    NB : Tous mes TCDs ont une seule et même base de données et ils ont tous l’élément de filtre qui est présent dans le segment

  2. #2
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 680
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 680
    Par défaut
    Bonjour,

    Peut-on voir le code qui crée les TCDs ?

  3. #3
    Membre averti
    Homme Profil pro
    Developpeur d'outils de pilotage
    Inscrit en
    Décembre 2014
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Developpeur d'outils de pilotage

    Informations forums :
    Inscription : Décembre 2014
    Messages : 19
    Par défaut
    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
    20
    21
     On Error GoTo ErrTCDs1
    Workbooks("Resultat_25.01.2017.xlsx").Worksheets("1. Nb.......acceptés").Activate
    ActiveSheet.Range("A1").Activate
    With ActiveWorkbook.PivotCaches.Create(xlDatabase, "BaseDonnée", xlPivotTableVersion15)
       .CreatePivotTable TableDestination:=ActiveCell, TableName:="1.Nombre......................acceptés"
    End With
    With ActiveSheet.PivotTables("1.Nombre......................acceptés").PivotFields("PEX")
            .Orientation = xlPageField
            .Position = 1
    End With
        With ActiveSheet.PivotTables("1.Nombre......................acceptés").PivotFields("TER")
            .Orientation = xlRowField
            .Position = 1
        End With
        ActiveSheet.PivotTables("1.Nombre................ acceptés").AddDataField ActiveSheet.PivotTables("1.Nombre......................acceptés"). _
            PivotFields("Identifiant Affaire"), "Nombre d'id Affaire", xlCount
    GoTo Suivante1
    ErrTCDs1:
    MsgBox "Une erreur est survenue lors de l'éxécution du TCD: " & "1. Nb......accepté", vbOKOnly, "Erreur sur la création de TCD"
    Exit Sub
    Suivante1:
    J'ai fait une boucle pour faire les 14 TCDs, l'exemple ci-dessous est simpliste mais il représente un TCDs lambda que je crée

  4. #4
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 680
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 680
    Par défaut
    En fait c'est le code avec la boucle qui m'interesse, puisque deux TCD avec la même sources peuvent être liés au même slicers, si tu n'y arrive pas c'est probablement là qu'est le problème.

    Dans ton exemple la source est:
    TableName:="1.Nombre......................acceptés"
    Tu es bien sur que c'est la même pour tous?

  5. #5
    Membre averti
    Homme Profil pro
    Developpeur d'outils de pilotage
    Inscrit en
    Décembre 2014
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Developpeur d'outils de pilotage

    Informations forums :
    Inscription : Décembre 2014
    Messages : 19
    Par défaut
    Merci au faite de prendre de ton temps pour t'intéresser à mon problème

    Question bête mais "TableName", ce n'est pas seulement le nom du TCD ?
    Car je n'ai pas le même nom pour chacun, ils ont tous un nom de tableau différent.
    Pour la boucle c'est un peu lourd à presenter, mais l'idée c'est que j'utilise une :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Workbooks(Nom_Fichier_Procedure).VBProject.VBComponents("Module3").CodeModule.InsertLines N, TousCode

    Avec TousCode qui est un string qui représente le code que j'ai présenté dans le post précédent

  6. #6
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 680
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 680
    Par défaut
    Question bête mais "TableName", ce n'est pas seulement le nom du TCD ?
    Au temps pour moi j'ai confondu, j'ai cru que c'était "BaseDonnée" le nom.
    Alors je reprend le "BaseDonnée" de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveWorkbook.PivotCaches.Create(xlDatabase, "BaseDonnée", xlPivotTableVersion15)
    c'est bien le même pour tous?

    edit: j'ai réussi a reproduire le problème, et j'ai une solution.
    Tu crée le premier normalement, pour les suivants il ne faut pas utiliser la table "BaseDonnée" comme source mais le premier TCD créé
    via l'enregistreur j'obtient (a adapter bien sur)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        ActiveWorkbook.Worksheets("Sheet4").PivotTables("PivotTable8").PivotCache. _
            CreatePivotTable TableDestination:="Sheet7!R3C1", TableName:="PivotTable10" _
            , DefaultVersion:=xlPivotTableVersion14
    Où je crée le PivotTable10 de la Sheet7 sur la source du PivotTable8 de la Sheet4

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

Discussions similaires

  1. Eclipse ne détecte pas les jars "jdom" que j'ai ajouté
    Par samia13 dans le forum Eclipse Java
    Réponses: 6
    Dernier message: 14/11/2007, 18h10
  2. Vista qui ne voit pas les autres ordinateurs du réseau
    Par rjulie dans le forum Windows Vista
    Réponses: 7
    Dernier message: 29/06/2007, 15h09
  3. [PC Cloner Expert] - Cloner Expert ne détecte pas les disques durs
    Par Lorponos dans le forum Autres Logiciels
    Réponses: 3
    Dernier message: 19/07/2006, 12h06
  4. Lenteur IE et pas les autres ?
    Par Pique dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 25/04/2006, 14h44
  5. Réponses: 4
    Dernier message: 18/01/2006, 14h49

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