SOUS-TOTAL sur nombre de valeurs

Résolu
touroul Messages postés 520 Date d'inscription   Statut Membre Dernière intervention   -  
touroul Messages postés 520 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour le forum !

J'ai des soucis avec la fonction SOUS.TOTAL d'Excel.
J'aurais souhaité qu'il me calcule le nombre de cellules non-vides (équivalent de NB.VAL) dans une ligne de sous-totaux.
Cette ligne est la dernière de mon tableau, je cherche à calculer le nombre de non-vides après application d'un filtre. Toutes les cellules contiennent des formules, certaines sont vides de résultat et c'est normal.
J'ai essayé toutes les formules de type
=NBVAL(A3:A250)
(qui me comptent tout sans tenir compte du filtre appliqué, et du type
=SOUS.TOTAL(103;(A3:A250))
(qui me comptent les formules alors que c'est du texte) ou encore
=SOUS.TOTAL(109;(A3:A250))
(qui m'additionnent les valeurs alors que c'est du texte)

Avez-vous une idée ?
Je vous en remercie par avance !

Configuration: Windows / Firefox 82.0

3 réponses

  1. DjiDji59430 Messages postés 4278 Date d'inscription   Statut Membre Dernière intervention   717
     
    Bonjour,

    Un fichier (test ou non), complété par des explications exhaustives et des exemples remplis à la main, mis sur https://www.cjoint.com/ permettrait aux intervenants de répondre plus précisément à ta question. Et précise aussi ta version d'Excel, si ce n'est déjà fait.

    Crdmt
    1
  2. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    Bonjour
    Probablement la seule possibilité à défaut d'en savoir plus
    créer une colonne masquée avec une formule qui renvoie 1 quand le résultat est à retenir et "" sinon, et appliquer le SOUS.TOTAL(9;...) à partir de cette colonne
    crdlmnt
    1
  3. touroul Messages postés 520 Date d'inscription   Statut Membre Dernière intervention   16
     
    Bonjour DjiDji, Vaucluse,

    Je viens de trouver une formule à mettre dans la ligne de sous-filtres qui semble fonctionner.
    Je suis en train de tester pour être sûr, mais ça semble OK.
    La voici :
    =SOMMEPROD((SOUS.TOTAL(3;INDIRECT("B"&LIGNE(B2:B1000)))*(B2:B1000<>"")))

    ou en colonnes nommées :
    =SOMMEPROD((SOUS.TOTAL(3;INDIRECT("B"&LIGNE([Colonne2])))*([Colonne2]<>"")))


    Pour rappel elle permet de compter toutes les valeurs (texte et chiffres) d'une colonne déjà filtrées (seulement sur les valeurs visibles).

    Merci de vous y être penchés !
    Bonne journée
    0