[Résolu] Compter les cellules non vides

Discussions à propos du tableur Calc.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
f52k
Membre lOOyal
Membre lOOyal
Messages : 31
Inscription : 07 nov. 2009 17:37

[Résolu] Compter les cellules non vides

Message par f52k »

Bonjour,

Y a-t-il une astuce ou simplement une formule qui permette de compter le nombre de cellules non vide d'une plage ?
La formule nb.vide() fonctionne bien, mais c'est l'inverse dont j'ai besoin.
A defaut, je peux toujours utiliser une formule (laquelle ?) pour compter le nombre de cellules de la plage et lui soustraire le nombre de cellules vides ...
Merci d'avance de vos suggestions
Dernière modification par f52k le 03 févr. 2010 16:11, modifié 2 fois.
OpenOffice 3.3.0 sous Windows sept
Jeff
GourOOu
GourOOu
Messages : 9940
Inscription : 18 sept. 2006 09:40
Localisation : France

Re: nb.non.vide() ?

Message par Jeff »

Bonjour et bienvenue,

Je pense que la fonction NBVAL est ce qu'il te faut.

A + :wink:
À lire avant tout !

Pour télécharger Apache OpenOffice

AOO 4.1.15 / Debian 12.10 "bookworm" / Xfce
Pierre-Yves Samyn
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 11276
Inscription : 02 mai 2006 08:42

Re: nb.non.vide() ?

Message par Pierre-Yves Samyn »

Bonjour
Jeff a écrit :Je pense que la fonction NBVAL est ce qu'il te faut.
+1

Mais, juste pour information et répondre stricto sensu :
f52k a écrit :compter le nombre de cellules non vide d'une plage

Code : Tout sélectionner

=NB.SI(A1:A10;"<>'.*'")
Noter l'emploi de la quote (simple) dans l'expression entourée de guillemets (double)
Jeff
GourOOu
GourOOu
Messages : 9940
Inscription : 18 sept. 2006 09:40
Localisation : France

Re: Compter les cellules non vides

Message par Jeff »

Bonjour Pierre-Yves :),

Il est vrai que, bien que moins simple dans ce cas précis d'utilisation, NB.SI a l'avantage de comptabiliser tout ce qui signalé comme critère.

Par contre, pour cet exemple précis (usage d'expressions régulières comme critère), f52k doit également vérifier que menu Outils > Options > OOoCalc > Calcul > Autoriser les caractères génériques dans les formules soit coché.

A + :wink:
À lire avant tout !

Pour télécharger Apache OpenOffice

AOO 4.1.15 / Debian 12.10 "bookworm" / Xfce
Avatar de l’utilisateur
gerard24
ManitOOu
ManitOOu
Messages : 3160
Inscription : 06 juil. 2008 17:08
Localisation : dans le Périgord

Re: Compter les cellules non vides

Message par gerard24 »

Bonjour,

Pour étoffer encore le sujet, j'ajouterais que si NB.SI est plus riche que NBVAL qui compte les cellules non vides quel que soit leur contenu,
la formule =NB.SI(A1:A10;"<>'.*'") présente le même défaut que NBVAL en présence d'une chaîne de caractères vide.

On est donc obligé de contourner le problème par une formule comme :

Code : Tout sélectionner

=SOMMEPROD(NBCAR(A1:A10)>0) 
Mais là, je crois que je fait du hors-sujet.
f52k a écrit :La formule nb.vide() fonctionne bien
Si NB.VIDE fonctionne, NBVAL et NB.SI aussi.

A+
OOodidacte
LibreOffice 6.4.5 sous Windows 10.
pour télécharger LibreOffice
Pierre-Yves Samyn
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 11276
Inscription : 02 mai 2006 08:42

Re: Compter les cellules non vides

Message par Pierre-Yves Samyn »

gerard24 a écrit :une chaîne de caractères vide
Pourrais-tu préciser ce que tu entends par vide ?
Avatar de l’utilisateur
gerard24
ManitOOu
ManitOOu
Messages : 3160
Inscription : 06 juil. 2008 17:08
Localisation : dans le Périgord

Re: Compter les cellules non vides

Message par gerard24 »

Pierre-Yves Samyn a écrit :Pourrais-tu préciser ce que tu entends par vide ?
Le résultat d'une formule du genre =SI(A1=1;1;"") avec A1 <> 1.
comptage_cellules.jpg
Ce résultat pour NB.SI me semble illogique mais le résultat est bien le même que pour NBVAL.

Edit : J'avais mal lu les messages précédents.
Pierre-Yves Samyn a écrit :Bonjour
Jeff a écrit :Je pense que la fonction NBVAL est ce qu'il te faut.
+1

Mais, juste pour information et répondre stricto sensu :
f52k a écrit :compter le nombre de cellules non vide d'une plage

Code : Tout sélectionner

=NB.SI(A1:A10;"<>'.*'")
Noter l'emploi de la quote (simple) dans l'expression entourée de guillemets (double)
Ce ne serait pas plutôt :

Code : Tout sélectionner

=NB.SI(A1:A10;".*")
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OOodidacte
LibreOffice 6.4.5 sous Windows 10.
pour télécharger LibreOffice
Pierre-Yves Samyn
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 11276
Inscription : 02 mai 2006 08:42

Re: Compter les cellules non vides

Message par Pierre-Yves Samyn »

gerard24 a écrit :Le résultat d'une formule du genre =SI(A1=1;1;"") avec A1 <> 1.
...
Ce ne serait pas plutôt :

Code : Tout sélectionner

=NB.SI(A1:A10;".*")
Et bien justement :
Capture-1.png
Certes je n'ai pas encore déjeuné, ce qui n'est sans doute pas raisonnable à cette heure-ci, mais il me semble bien que...
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Avatar de l’utilisateur
gerard24
ManitOOu
ManitOOu
Messages : 3160
Inscription : 06 juil. 2008 17:08
Localisation : dans le Périgord

Re: Compter les cellules non vides

Message par gerard24 »

Certes je n'ai pas encore déjeuné, ce qui n'est sans doute pas raisonnable à cette heure-ci, mais il me semble bien que...
Moi c'est fait, merci.

Pour moi <>".*" signifie différent de tout caractère. Je ne vois pas pourquoi cela compte les cellules non vides.
Il va falloir que je révise mes "expressions régulières".
OOodidacte
LibreOffice 6.4.5 sous Windows 10.
pour télécharger LibreOffice
f52k
Membre lOOyal
Membre lOOyal
Messages : 31
Inscription : 07 nov. 2009 17:37

Re: Compter les cellules non vides

Message par f52k »

Oups j'étais ailleurs ...

Merci de toutes ces précisions.
Je cherchais la possibilité de compter les cellules vides de toute information y compris les éventuelles formules.
J'ai donc utilisé =NB.SI(A1:A10;"<>'.*'")

Merci beaucoup de vos réponses !!
OpenOffice 3.3.0 sous Windows sept