Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

NB.SI multiplages

11 réponses
Avatar
Jacquouille
Bonjour
NB.SI(plage;critère) ne tolère qu'une plage.
Un truc du genre =NB.SI(A1:A10:C1:C10;critère) prend en compte la plage
A1:C10.
Je crois me souvenir que L.L., chef à 4 plumes, avait pondu une macro (à
télécharger) qui permettait à NB.SI de calculer sur des palges discontinues?
un truc du genre=NB.SI(A1:A10,C1:C10;critère)
Mais voilà, mon neurone ne se souvient plus.....
Avez-vous un rafraichissant, svp???
Merci et bonne soirée.

--
Bien amicalmement,
Vivement conseillés:
- Un plus gros marteau et un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

10 réponses

1 2
Avatar
Boisgontier
Bonsoir,

NBSI sur champs discontinus:

Dans un module: Alt+F11 puis Insertion/Module

Function NbSi(plage, condition)
Application.Volatile
NbSi = 0
For Each c In plage
If Application.CountIf(c, condition) Then NbSi = NbSi + 1
Next c
End Function


=nbsi((B3:B7;D3:D5);"x")
=nbsi((B21:B25;D21:D23);">100")

http://cjoint.com/?hst1Qvk7zk

JB

"Jacquouille" a écrit dans le message de
news:
Bonjour
NB.SI(plage;critère) ne tolère qu'une plage.
Un truc du genre =NB.SI(A1:A10:C1:C10;critère) prend en compte la plage
A1:C10.
Je crois me souvenir que L.L., chef à 4 plumes, avait pondu une macro (à
télécharger) qui permettait à NB.SI de calculer sur des palges
discontinues? un truc du genre=NB.SI(A1:A10,C1:C10;critère)
Mais voilà, mon neurone ne se souvient plus.....
Avez-vous un rafraichissant, svp???
Merci et bonne soirée.

--
Bien amicalmement,
Vivement conseillés:
- Un plus gros marteau et un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.




Avatar
Boisgontier
Autre version,


Function NbSi(plage, condition)
Application.Volatile
NbSi = 0
For m = 1 To plage.Areas.Count
NbSi = NbSi + Application.CountIf(plage.Areas(m), condition)
Next m
End Function


http://cjoint.com/?hsusHylrwG


JB


"Jacquouille" a écrit dans le message de
news:
Bonjour
NB.SI(plage;critère) ne tolère qu'une plage.
Un truc du genre =NB.SI(A1:A10:C1:C10;critère) prend en compte la plage
A1:C10.
Je crois me souvenir que L.L., chef à 4 plumes, avait pondu une macro (à
télécharger) qui permettait à NB.SI de calculer sur des palges
discontinues? un truc du genre=NB.SI(A1:A10,C1:C10;critère)
Mais voilà, mon neurone ne se souvient plus.....
Avez-vous un rafraichissant, svp???
Merci et bonne soirée.

--
Bien amicalmement,
Vivement conseillés:
- Un plus gros marteau et un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.




Avatar
Jacquouille
Bonsoir Jacques
Dans ma demande, je fais allusion à une formule née de la plume de LL qui ne
fonctionnait qu'après avoir téléchargé des macros additionnelles. C'est
cela que je voudrais retrouver.
Un grand merci pour vos pistes et solutions.

--
Bien amicalmement,
Vivement conseillés:
- Un plus gros marteau et un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

"Boisgontier" a écrit dans le message de
news:
Autre version,


Function NbSi(plage, condition)
Application.Volatile
NbSi = 0
For m = 1 To plage.Areas.Count
NbSi = NbSi + Application.CountIf(plage.Areas(m), condition)
Next m
End Function


http://cjoint.com/?hsusHylrwG


JB


"Jacquouille" a écrit dans le message de
news:
Bonjour
NB.SI(plage;critère) ne tolère qu'une plage.
Un truc du genre =NB.SI(A1:A10:C1:C10;critère) prend en compte la plage
A1:C10.
Je crois me souvenir que L.L., chef à 4 plumes, avait pondu une macro (à
télécharger) qui permettait à NB.SI de calculer sur des palges
discontinues? un truc du genre=NB.SI(A1:A10,C1:C10;critère)
Mais voilà, mon neurone ne se souvient plus.....
Avez-vous un rafraichissant, svp???
Merci et bonne soirée.

--
Bien amicalmement,
Vivement conseillés:
- Un plus gros marteau et un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.








Avatar
Jacquouille
Re
Je viens de me trouver un truc sur Excelabo.
Après adaptation, voici ce que j'ai obtenu, en matricielle
=somme((A1:A20=H1)+(C1:C20=H1)) --> ctrl+Maj+enter
Mais ce n'est pas encore ce que LL avait pondu.....

--
Bien amicalmement,
Vivement conseillés:
- Un plus gros marteau et un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

"Jacquouille" a écrit dans le message de
news:
Bonjour
NB.SI(plage;critère) ne tolère qu'une plage.
Un truc du genre =NB.SI(A1:A10:C1:C10;critère) prend en compte la plage
A1:C10.
Je crois me souvenir que L.L., chef à 4 plumes, avait pondu une macro (à
télécharger) qui permettait à NB.SI de calculer sur des palges
discontinues? un truc du genre=NB.SI(A1:A10,C1:C10;critère)
Mais voilà, mon neurone ne se souvient plus.....
Avez-vous un rafraichissant, svp???
Merci et bonne soirée.

--
Bien amicalmement,
Vivement conseillés:
- Un plus gros marteau et un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.




Avatar
LSteph
Bonsoir Jacques,

=NB.SI(A1:C10;"lulu")-NB.SI(B1:B10;"lulu")

CordiAmicalement.

lSteph

Re
Je viens de me trouver un truc sur Excelabo.
Après adaptation, voici ce que j'ai obtenu, en matricielle
=somme((A1:A20=H1)+(C1:C20=H1)) --> ctrl+Maj+enter
Mais ce n'est pas encore ce que LL avait pondu.....



Avatar
Jol
Bonjour Jacquiolle,

C'est NB.SI.3D après avoir installé Morefun de LL

Jol
"Jacquouille" a écrit dans le message de
news: ea%
Bonsoir Jacques
Dans ma demande, je fais allusion à une formule née de la plume de LL qui
ne fonctionnait qu'après avoir téléchargé des macros additionnelles.
C'est cela que je voudrais retrouver.
Un grand merci pour vos pistes et solutions.

--
Bien amicalmement,
Vivement conseillés:
- Un plus gros marteau et un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

"Boisgontier" a écrit dans le message de
news:
Autre version,


Function NbSi(plage, condition)
Application.Volatile
NbSi = 0
For m = 1 To plage.Areas.Count
NbSi = NbSi + Application.CountIf(plage.Areas(m), condition)
Next m
End Function


http://cjoint.com/?hsusHylrwG


JB


"Jacquouille" a écrit dans le message de
news:
Bonjour
NB.SI(plage;critère) ne tolère qu'une plage.
Un truc du genre =NB.SI(A1:A10:C1:C10;critère) prend en compte la plage
A1:C10.
Je crois me souvenir que L.L., chef à 4 plumes, avait pondu une macro (à
télécharger) qui permettait à NB.SI de calculer sur des palges
discontinues? un truc du genre=NB.SI(A1:A10,C1:C10;critère)
Mais voilà, mon neurone ne se souvient plus.....
Avez-vous un rafraichissant, svp???
Merci et bonne soirée.

--
Bien amicalmement,
Vivement conseillés:
- Un plus gros marteau et un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.












Avatar
Jacquouille
Bonjour Jol
Bien que tu m'aies amputé d'une partie qui m'est très chère, je te remercie.
C'est exactement cela que je cherchais, mais que mon neurone refusait ....Je
vais prendre des sanctions envers lui, mais aussi envers tous les autres
répondeurs....-))
Merci et bonne fin de journée.

--
Bien amicalmement,
Vivement conseillés:
- Un plus gros marteau et un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

"Jol" a écrit dans le message de news:

Bonjour Jacquiolle,

C'est NB.SI.3D après avoir installé Morefun de LL

Jol
"Jacquouille" a écrit dans le message de
news: ea%
Bonsoir Jacques
Dans ma demande, je fais allusion à une formule née de la plume de LL qui
ne fonctionnait qu'après avoir téléchargé des macros additionnelles.
C'est cela que je voudrais retrouver.
Un grand merci pour vos pistes et solutions.

--
Bien amicalmement,
Vivement conseillés:
- Un plus gros marteau et un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

"Boisgontier" a écrit dans le message de
news:
Autre version,


Function NbSi(plage, condition)
Application.Volatile
NbSi = 0
For m = 1 To plage.Areas.Count
NbSi = NbSi + Application.CountIf(plage.Areas(m), condition)
Next m
End Function


http://cjoint.com/?hsusHylrwG


JB


"Jacquouille" a écrit dans le message de
news:
Bonjour
NB.SI(plage;critère) ne tolère qu'une plage.
Un truc du genre =NB.SI(A1:A10:C1:C10;critère) prend en compte la plage
A1:C10.
Je crois me souvenir que L.L., chef à 4 plumes, avait pondu une macro
(à télécharger) qui permettait à NB.SI de calculer sur des palges
discontinues? un truc du genre=NB.SI(A1:A10,C1:C10;critère)
Mais voilà, mon neurone ne se souvient plus.....
Avez-vous un rafraichissant, svp???
Merci et bonne soirée.

--
Bien amicalmement,
Vivement conseillés:
- Un plus gros marteau et un verre de vin d'Alsace....et tout ira
mieux.

Jacquouille.
















Avatar
Jacquouille
Alors, mon vieux.
On travaille chez Brico?
Et que fais-tu de la soluce que j'ai proposée le 18 à 23:16?
Et mieux, que fais-tu de celle de Jol ce jour à 18:46?
Hein? C'est pas sérieux, cela.
Prochain plat, vous passerez votre tour et vous irez dormir sans souper.

--
Bien amicalmement,
Vivement conseillés:
- Un plus gros marteau et un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

"LSteph" a écrit dans le message de news:

Bonsoir Jacques,

=NB.SI(A1:C10;"lulu")-NB.SI(B1:B10;"lulu")

CordiAmicalement.

lSteph

Re
Je viens de me trouver un truc sur Excelabo.
Après adaptation, voici ce que j'ai obtenu, en matricielle
=somme((A1:A20=H1)+(C1:C20=H1)) --> ctrl+Maj+enter
Mais ce n'est pas encore ce que LL avait pondu.....





Avatar
LSteph
Bonsoir,

En toute amitié tu me pardonnera ma franchise

On travaille chez Brico?
Sauf si toi tu as besoin d'une Masse pour enfoncer une punaise, je ne

crois pas!


Pas du tout c'est on ne peut plus simple et par rapport
à cela:
Et que fais-tu de la soluce que j'ai proposée le 18 à 23:16?
..pas besoin de matricielle, encore moins de faire appel à VBA

et cela fait exactement ce que tu demandais, où un rien m'échappe,

le NB.Si3D de morefun.dll a en revanche des facultés plus élaborées
puisqu'il passe sur plusieurs feuilles.

Bref par rapport à ta demande ce que j'ai suggèré me paraissait
et me semble d'ailleurs toujours amplement suffisant, mais je n'ai
peut-être pas saisi toute la profondeur de la question.

Je serais même prêt à sauter un plat si j'avais tort...
;o) c'est dire!

Bises à Minou.

lSteph



Alors, mon vieux.
On travaille chez Brico?
Et que fais-tu de la soluce que j'ai proposée le 18 à 23:16?
Et mieux, que fais-tu de celle de Jol ce jour à 18:46?
Hein? C'est pas sérieux, cela.
Prochain plat, vous passerez votre tour et vous irez dormir sans souper.



Avatar
Jacquouille
Re
Comme dirait le Vénérable, te absolvo.
La bise à Minou est un joker qui pardonne tout. -)
Je te rends le souper.
C'est vrai que pour faire ce que je voulais, la solution d'additionner les
nb.si est amplement suffisante.
mais, vois-tu, à force de fréquenter les grosses têtes d'ici, on a parfois
evie de peaufiner.....-)
Bon WE
PS ne mange pas encore tout.

--
Bien amicalmement,
Vivement conseillés:
- Un plus gros marteau et un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

"LSteph" a écrit dans le message de news:

Bonsoir,

En toute amitié tu me pardonnera ma franchise

On travaille chez Brico?
Sauf si toi tu as besoin d'une Masse pour enfoncer une punaise, je ne

crois pas!


Pas du tout c'est on ne peut plus simple et par rapport
à cela:
Et que fais-tu de la soluce que j'ai proposée le 18 à 23:16?
..pas besoin de matricielle, encore moins de faire appel à VBA

et cela fait exactement ce que tu demandais, où un rien m'échappe,

le NB.Si3D de morefun.dll a en revanche des facultés plus élaborées
puisqu'il passe sur plusieurs feuilles.

Bref par rapport à ta demande ce que j'ai suggèré me paraissait
et me semble d'ailleurs toujours amplement suffisant, mais je n'ai
peut-être pas saisi toute la profondeur de la question.

Je serais même prêt à sauter un plat si j'avais tort...
;o) c'est dire!

Bises à Minou.

lSteph



Alors, mon vieux.
On travaille chez Brico?
Et que fais-tu de la soluce que j'ai proposée le 18 à 23:16?
Et mieux, que fais-tu de celle de Jol ce jour à 18:46?
Hein? C'est pas sérieux, cela.
Prochain plat, vous passerez votre tour et vous irez dormir sans souper.





1 2