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 :

[VBA-Excel] Faire un filtre dans un tableau croisé dynamique


Sujet :

Macros et VBA Excel

  1. #1
    Invité
    Invité(e)
    Par défaut [VBA-Excel] Faire un filtre dans un tableau croisé dynamique
    Bonjour à tous,

    j'utilise VB pour manipuler des tableaux croisés dynamique sous Excel.

    N'étant pas un expert, je suis limité à l'utilisation de fonctions basiques or j'aimerais pouvoir faire la chose suivante :

    - afficher dans champ uniquement les éléments commencant par "TS"
    - faire une deuxième macro afin de réinitialiser le tableau et l'afficher tel qu'il était au départ.

    Mon intuition me dit d'utiliser la commande PivotItems (cf exemple suivant) avec une fonction filtre à la place d'une valeur bien définie

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Sub Filtre()
     
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Truc")
            .PivotItems("TS*").Visible = True
    End With
     
    End Sub
    Seulement ça n'a pas l'air possible dans un pivot.

    Quelqu'un aurait une idée ?

    Merci pour votre aide.

  2. #2
    Invité
    Invité(e)
    Par défaut


    En faisant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Truc").CurrentPage = "TS*"
    Je ne suis pas certain que "TS*" fonctionne !?

    Cordialement.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bien tenté, mais malheureusement ça ne fonctionne pas. Ce serait beau.

    Ce qui est curieux c'est que l'on peut faire référence à une cellule mais pas inclure une formule. Existe-t-il une syntaxe particulière pour le faire ?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par SFrane
    Bien tenté, mais malheureusement ça ne fonctionne pas. Ce serait beau.

    Ce qui est curieux c'est que l'on peut faire référence à une cellule mais pas inclure une formule. Existe-t-il une syntaxe particulière pour le faire ?
    A ma connaissance, non, malheureusement

    Seule solution :
    1) Filtrer d'abord les lignes dont "Truc" commence par "TS"
    2) Afficher tous les enregistrements dans le TCD
    Et là, ho miracle il n'y a que les lignes commençant par "TS"

    Voilà

  5. #5
    Invité
    Invité(e)
    Par défaut
    Je vais essayer mais je doute que ça fonctionne, je pense que le pivot prendra en compte les éléments non affichés.

  6. #6
    Invité
    Invité(e)
    Par défaut
    Ca marche sur Excel 2000 !

    J'ai testé sur Excel 2K3 ça marche nikel
    Il ne devrait pas y avoir de problème !

  7. #7
    Invité
    Invité(e)
    Par défaut
    Tu veux dire qu'en faisant un filtre dans le tableau source, le TDC ne prend en compte que les données visibles ?

  8. #8
    Invité
    Invité(e)
    Par défaut
    YES !

    Affirmatif

  9. #9
    Invité
    Invité(e)
    Par défaut
    Bon, en fait j'ai fini par rapatrier les données du fichier source et j'ai ajouté une colonne dans laquelle je classe par groupe chaque ligne de mon tableau afin de séléctionner ce que je veux voir.

    Ce n'est pas la méthode la plus optimale mais elle a le mérite de marcher.

    Si quelqu'un a une meilleure idée...

    D'autre part, faire un pivot basé sur un tableau filtré ne change rien. Le pivot affiche TOUTES les données, y compris celles qui sont cachées par le filtre.

Discussions similaires

  1. Filtre dans un tableau croisé dynamique
    Par cabaye123 dans le forum Excel
    Réponses: 5
    Dernier message: 07/07/2014, 20h52
  2. [XL-2010] VBA filtre dans un tableau croisé dynamique
    Par gauthier69 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 06/04/2014, 12h17
  3. [XL-2007] VBA Excel : récupérer le nom d'un tableau croisé dynamique
    Par koobcam dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 04/10/2011, 15h16
  4. VBA Excel :séparation dans un tableau croisé dynamique
    Par hiline6 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 28/11/2006, 08h52
  5. Réponses: 4
    Dernier message: 27/11/2006, 23h20

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