Récupérer le nombre de lignes qui sont affichées, filtrées dans un TCD

Anonyme
2023-08-22T09:38:00+00:00

Bonjour,

J'utilise un TCD. J'aimerais pouvoir récupérer le nombre de lignes filtrées qui s'affichent d'un segment choisi, pour afficher ce nombre dans une cellule.

Dans la barre d'état, le nombre que je voudrais récupérer s'affiche (lorsque je clique sur la première ligne du segment, ça sélectionne automatiquement toutes les autres lignes du même segment). Mais quelle formule utiliser pour le récupérer ?

J'ai essayé la formule =SOUS.TOTAL(no_fonction*;Nom_du_Segment) mais cela ne fonctionne pas.

*no_fonction = 2, 3 ou 102, 103

Auriez-vous une solution ?

Merci,

PS : Ci-joint une image qui montre le nombre que j'aimerais récupérer.

Microsoft 365 et Office | Excel | Other | Windows

Question verrouillée. Cette question a été migrée à partir de la Communauté Support Microsoft. Vous pouvez voter pour indiquer si elle est utile, mais vous ne pouvez pas ajouter de commentaires ou de réponses ni suivre la question.

0 commentaires Aucun commentaire

14 réponses

  1. DanielCo 107.7K Points de réputation
    2023-08-22T14:02:10+00:00

    Essaie :

    Function NB_Communes()
    Dim PI As PivotItem, C As Range, Tbl(), I As Long
    Application.Volatile
    I = -1
    ReDim Tbl(ActiveSheet.PivotTables(1).PivotFields("communes").PivotItems.Count - 1)
    For Each PI In ActiveSheet.PivotTables(1).PivotFields("communes").PivotItems
    I = I + 1
    Tbl(I) = PI.Value
    Next PI
    For Each C In ActiveSheet.PivotTables(1).TableRange2.Columns(1).Cells

    If IsNumeric(Application.Match(C, Tbl, 0)) Then NB\_Communes = NB\_Communes + 1  
    

    Next C
    End Function

    Daniel

    Cette réponse a-t-elle été utile ?

    1 personne a trouvé cette réponse utile.
    0 commentaires Aucun commentaire
  2. Anonyme
    2023-08-22T13:01:33+00:00

    Bonjour Hecatonchire,

    Merci de votre réponse.

    Cela fonctionne, mais seulement lorsque je sélectionne un seul département. Si tous les départements sont sélectionnés (18, 28, 36, 37, 41), cela ne peut pas fonctionner.

    C'était une jolie façon de contourner le problème ^^

    Merci en tout cas.

    Cordialement,

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  3. Anonyme
    2023-08-22T12:47:11+00:00

    Bonjour Daniel,

    Merci de votre retour.

    Je viens d'essayer cette formule, et elle fonctionne mais pas tout à fait.

    Elle fonctionne seulement lorsque je filtre avec le segment "Commune". Si je sélectionne plusieurs communes de ce segment, oui, elle m'affiche bien le nombre de communes sélectionnées.

    Cependant, lorsque je souhaite filtrer avec le segment "Dpt", et donc que ça sélectionne un "Dpt" (=Département) entier, la valeur de la formule renvoie le nombre total de commune. Il ne renvoie pas seulement le nombre de communes (lignes) affichées pour ce département.

    Je pense qu'il faudrait vraiment une formule qui puisse compter le nombre de lignes affichées en fonction du filtrage par "Dpt" et ou par "Commune".

    Merci d'avance pour votre aide et votre temps consacré à la résolution de ma question.

    Bien cordialement,

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  4. Hecatonchire 53,950 Points de réputation Modérateur bénévole
    2023-08-22T11:46:15+00:00

    Bonjour,

    =NB.SI.ENS(A:A;GAUCHE($A$4;5)&"*")

    Si toutes tes commue sont formatées de la même manière

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  5. DanielCo 107.7K Points de réputation
    2023-08-22T11:08:40+00:00

    Bonjour,

    Essaie la fonction VBA NB_Communes (pas de paramètre) :

    Function NB_Communes()
    Dim PI As PivotItem
    Application.Volatile
    For Each PI In ActiveSheet.PivotTables(1).PivotFields("commune").PivotItems
    If PI.Visible = True Then NB_Communes = NB_Communes + 1
    Next PI
    End Function

    Véifie le nom du champ : "commune". S'il y a plusieurs TCD sur la feuille, modifie le nom ou l'index du TCD.

    Daniel

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire