Si plage avec formules non vide

Bonsoir à vous !

J'ai une feuille avec des cellules contenant des formules.

J'essaie désespérément de compter les cellules non-vides d'une plage, par exemple:

en A2 : afficher 0 si la plage A3:A10 ne contient ni chiffre ni texte

J'ai tenté NB.VIDE (A3:A10), SOMME.SI(A3:A10)<>"", <>0, NBVAL etc etc .... j'ai le cervelet qui bouillonne et je craque

Visiblement il n'aime pas bien qu'il y ait des formules dans mes cellules...

Vous avez la solution évidemment, hein, dites ?

Merci et bonne soirée !

Bonjour,

Essaie =NBVAL(A3:A10) donnera le nombre de cellules non vides .

ric

Rebonjour,

Si le 0 n'apparaît pas, va dans les Options d'Excel > Options avancées > section : Options d'affichage de la feuille de calcul > coche : Afficher un zéro dans les cellules qui ont une valeur nulle.

Voilà.

ric

Bonjour,

Oliv34 a écrit :

J'ai tenté NB.VIDE (A3:A10), SOMME.SI(A3:A10)<>"", <>0, NBVAL etc etc ....

Visiblement il n'aime pas bien qu'il y ait des formules dans mes cellules...

ric a proposé cette formule : =NBVAL(A3:A10) ; alors sauf erreur de manip du demandeur, ça m'a paru trop simple !


j'ai fait ce test : en A1 et B1 : rien, laisser vide ; en C1 : =A1&B1 ; en D1 : =B1&C1 ; en E1 : =NBVAL(A1:D1)2 ; pas 0 !

alors y'a bien 2 cellules non vides car les cellules C1 et D1 contiennent chacune une formule, mais comment faire pour que ça indique 0 cellule non vide ? je propose cette formule en E1 : =4-NB.SI(A1:D1;"")

ou alors en VBA : utiliser un test avec : HasFormula()

dhany

Bonjour, Salut à tous !

J'essaie désespérément de compter les cellules non-vides d'une plage

Il faut d'abord définir ce que tu entends par non-vides !

Une cellule qui contient une formule n'est plus vide par définition.

La valeur notée "" est une valeur texte (texte vide).

NBVAL la compte comme valeur.

Et ESTVIDE renverra FAUX pour une cellule contenant cette valeur.

Par exception, NB.VIDE assimile les cellules vides et celles contenant la valeur "" pour les compter comme vides.

NB.SI est quelque peu déroutant en la matière... Supposons la plage A3:A10 contenant des formules qui renvoient ""

=NB.SI(A3:A10;"<>"&"") va renvoyer 8 !

=NB.SI(A3:A10;"="&"") va renvoyer 0 !

Tout se passe donc comme si la valeur "" était assimilée à vide et non interprété comme valeur.

Mais :

=NB.SI(A3:A10;"") renverra par 8, et le résultat variera effectivement en fonction du nombre de cellules contenant cette valeur (contrairement aux deux précédents).

Cordialement.

Merci à tous pour vos propositions, mes formules sont des matricielles, ça change peut-être quelquechose...

@Ric : NBVAL(F10:J10) me donne 5 si les cellules "paraissent" vides, mais 5 aussi si elles contiennent du texte.

@Dhany : Ta proposition fonctionne bien, merci beaucoup, je n'y croyais plus

@MFerrand : Oui, j'ai vite compris que c'était pas aussi simple qu'il y parait Merci pour cette explication

Merci à vous, à une prochaine, et bonne journée !

@Oliv34

merci pour ton retour, et pour avoir passé le sujet en résolu !

bonne continuation, et bonne journée à toi aussi !

dhany

Bonjour,

J'essaie désespérément de compter les cellules non-vides d'une plage, par exemple:

Laisse supposer que les autres sont vraiment vides et non pas avec un résultat donnant un "vide" à l'affichage.

Je me suis donc fait enduire d'erreurs.

ric

@ Ric : J'avais bien compris que tu avais mal compris et que tu étais enduit d'erreurs

ric a écrit :

Je me suis donc fait enduire d'erreurs.

Oliv34 a écrit :

@ Ric : J'avais bien compris que tu avais mal compris et que tu étais enduit d'erreurs

pauvre ric !

c'est pas pa'c'qu'il a utilisé le verbe « enduire » au lieu de « induire » qu'il faut en rajouter une couche !

(j'parle de couche de peinture ou de vernis ; et avec le verbe induire, c'est : « induire en erreur »)

dhany

Bonjour,

Et dhany, j'espère que tu ne penses pas que je me trompais d'expression.

ric

Bonjour,

@ Ric : J'avais bien compris que tu avais mal compris et que tu étais enduit d'erreurs

Quand les explications sont claires et détaillées, il est facile de bien comprendre.

Je vais continuer à m'enduire d'erreurs, c'est amusant.

ric

Au risque de paraître très à contre-courant, la solution fournie par Ric dans le contexte était tout à fait rationnelle. Et en l'état elle demeure, puisque la connaissance du contexte n'a pas varié d'un pouce, aucun retour n'est venu le préciser.

On ne savait pas quelle interprétation faire de non-vide, on ne le sait toujours pas. On sait en plus que les formules sont matricielles, ce qui n'apporte rien de plus, une formule renvoie toujours un résultat (lequel peut être une valeur d'erreur). On n'est donc pas en mesure de fournir d'autre solution sur une base rationnelle.

Cordialement.

Tu as tout à fait raison, pour moi, vide signifiait que rien n'apparaît dans les cellules, visuellement s'entend.

J'ai manqué de précision et je comprends qu' on puisse donner une réponse du coup inefficace, je m'en excuse platement

J'avoue que jusqu'ici je n'avais jamais réalisé la différence entre une cellule contenant une formule ou non.... Je suis assez nouveau dans tout ça : )

Bref, ça fonctionne maintenant, merci encore à vous qui m'apportez votre aide bénévolement.

Et à très bientôt surement

Bonjour à toutes et tous,

Avec Excel 2013, est apparue le fonction ESTFORMULE().

Combiner avec la fonction NBCAR(), pour une formule qui renvoie "", utiliser :

=ET(ESTFORMULE(Cellule);NBCAR(Cellule)=0)

Ce que l'on fait avec VBA…

Cell.hasformula and Len(cell)=0

Bon weekend.

Envoyé de mon mobile...

Merci pour cette piste Jean Eric, je regarderai ça dès que possible !

Bonne soirée

Rechercher des sujets similaires à "plage formules vide"