sommeprod Compter nombre de cellules avec contenu différent sur plage variable

Le
Alex
Bonjour à tous,

J'ai voulu faire un sommeprod pour compter le nombre de cellules avec
un contenu différent dans une colonne, comme suit :

=SOMMEPROD((A1:A5=A1:A5)/NB.SI(A1:A5;A1:A5))

Cela fonctionne très bien, lorsque je connais la plage, mais bien sure
ma plage est variable et si j''agrandi ma définition de plage et qu'il
y a des cellule vide, cela ne fonctionne plus, j'obtiens :

#DIV/0!

Quelqu'un aurait il une solution à mon problème.

Merci par avance de votre aide.

Bien cordialement.
Alex
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Alex
Le #23593781
Re Bonjour à tous,

Je pense avoir trouvé la solution, j'ai modifié mon sommeprod comme
suit :

=SOMMEPROD((plage=plage)/NB.SI(plage;plage))

et dans ma macro, j'ai ajouté les lignes suivantes, afin de définir
plage :

Range("A2").Select
Range(Selection, Selection.End(xlDown)).Select
With Selection
Selection.Name = "plage"
End With

Cela semble fonctionné correctement.

Cela vous semble t il correct ?

Bien cordialement.
Alex
LSteph
Le #23594631
Bonjour,
Cela vous semble t il correct ?


oui, mais vire donc toutes ces merdouilles de Select Selection

Range([A2], [A2].End(xlDown)).Name = "plage"


tu pourrais aussi recourir à ce qui existe dans excel avant de
recourir à vba, soit définir un nom dynamique avec decaler lire ici:
http://www.excelabo.net/pasapas/decaler

Dans la page voir à
Utilisation de DECALER pour définir des plages de façon dynamique :
définir la plage qui va de A1 jusqu'à la dernière cellule non vide de
la colonne A.

Cordialement.

--
LSteph

On Jul 22, 10:38 am, Alex
Re Bonjour à tous,

Je pense avoir trouvé la solution, j'ai modifié mon sommeprod comme
suit :

=SOMMEPROD((plage=plage)/NB.SI(plage;plage))

et dans ma macro, j'ai ajouté les lignes suivantes, afin de définir
plage :

Range("A2").Select
Range(Selection, Selection.End(xlDown)).Select
With Selection
    Selection.Name = "plage"
End With

Cela semble fonctionné correctement.

Cela vous semble t il correct ?

Bien cordialement.
Alex
Alex
Le #23594881
Bonjour LSteph,

Merci pour ta réponse.
En fait, je suis passé par le vba, car il s'agit d'une de mes étapes
de ma macro.
Je procede a la correction des mes "selection"
Merci encore
Alex
JB
Le #23596451
Bonjour,

Si cellules vides dans le champ:

=SOMME(SI(A1:A8<>"";1/NB.SI(A1:A8;A1:A8)))
Valider avec Maj+Ctrl+entrée

http://boisgontierjacques.free.fr/pages_site/sommeprod.htm#CompterNbDiff

JB

On 22 juil, 10:10, Alex
Bonjour à tous,

J'ai voulu faire un sommeprod pour compter le nombre de cellules avec
un contenu différent dans une colonne, comme suit :

=SOMMEPROD((A1:A5¡:A5)/NB.SI(A1:A5;A1:A5))

Cela fonctionne très bien, lorsque je connais la plage, mais bien sure
ma plage est variable et si j''agrandi ma définition de plage et qu'il
y a des cellule vide, cela ne fonctionne plus, j'obtiens :

#DIV/0!

Quelqu'un aurait il une solution à mon problème.

Merci par avance de votre aide.

Bien cordialement.
Alex
Publicité
Poster une réponse
Anonyme