Fonctions Somme.si et Nb.si

Résolu/Fermé
Zebulon97 Messages postés 47 Date d'inscription mardi 15 septembre 2009 Statut Membre Dernière intervention 26 novembre 2017 - 26 mai 2014 à 18:17
Zebulon97 Messages postés 47 Date d'inscription mardi 15 septembre 2009 Statut Membre Dernière intervention 26 novembre 2017 - 22 juin 2014 à 11:27
Bonjour,

J'aimerai savoir s'il est possible utiliser les fonctions Somme.si et Nb.si sur des plages de cellules non contiguës.
Je m'explique, j'ai un tableau dans lequel je voudrais compter le nombre d'appartement par type et totaliser leur valeur. Mes plages de cellules sont de tailles identiques.
J'ai essayé en nommant les cellules mais cela ne fonctionne pas.
Je joins un fichier exemple. Si quelqu'un a une solution.
https://www.cjoint.com/?DEAsp1rqkDI
Bonne soirée, cordialement.
Zébulon

5 réponses

via55 Messages postés 14408 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 5 mai 2024 2 705
Modifié par via55 le 26/05/2014 à 18:56
Bonsoir

Rien compris à ton fichier, ni quelles cellules tu veux sommer et où, il faut donner plus d'indications quand tu envoies un fichier !

Par contre tu peux parfaitement parfaitement enchainer les somme.si ou nb.si de plages différentes
= nb.si(A1:A2;"a") + nb.si(C3:d5;"a") totalisera bien tous les a des 2 plages

Cdlmnt

"L'imagination est plus importante que le savoir." A. Einstein
0
Zebulon97 Messages postés 47 Date d'inscription mardi 15 septembre 2009 Statut Membre Dernière intervention 26 novembre 2017
26 mai 2014 à 19:26
Bonsoir Via55

Désolé pour le manque de clarté.

Je veux compter le nombre d'appartement par type dans les cellules U17 à U21.
Les infos se trouvent dans les cellules B4;k4;t4;ac4;al4 et au4.
Les montants dans les cellules D4; m4;v4;ae4;an4 et aw4.
Bien sur le fichier joint n'est qu'un extrait de mon fichier.
J'espère avoir été plus explicite.
Cordialement.
0
via55 Messages postés 14408 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 5 mai 2024 2 705
26 mai 2014 à 21:17
Me revoilà, après le repas :)

Ton fichier avec formules et plages nommées

https://www.cjoint.com/?0EAvrKjvLFS

Attention les formules pour Min et Max sont de formules matricielles (à valider par Ctrl + maj + entrée et elles se mettent automatiquement entre { } )

Pour pouvoir appliquer le même genre de formules aux prix il faudrait que les prix soient dans des cellules dans la même colonne que les types (et non à côté)

Cdlmnt
0
Bonsoir Via55,

Merci pour le fichier modifié. Cela m'ouvre de nouvelles possibilités.

Par contre, dans le cas d'un immeuble, où je vais retrouver pour chaque étage la même plage de cellules. Je suppose qu"il faut additionner les lignes.

Est il possible avec une formule matricielle de simplifier la formule.

Bonne soirée. Cordialement.
0
via55 Messages postés 14408 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 5 mai 2024 2 705
Modifié par via55 le 27/05/2014 à 19:13
Oui vraisemblablement il faudra dans ton tableau avec les étages avoir une ligne supplémentaire où se fera l'addition pour avoir le global

Qu'entends tu par simplifier la formule ?

Bonne soirée également

Cdlmnt
0
Zebulon97 Messages postés 47 Date d'inscription mardi 15 septembre 2009 Statut Membre Dernière intervention 26 novembre 2017
18 juin 2014 à 23:44
Bonsoir Via55,

Désolé pour la réaction tardive, mais je n'avais pas vu ta réponse.

J'ai travaillé un peu le sujet et synthétisé le tableau. Par contre, pourquoi l'on ne peut pas utiliser le (somme.s)i sur la somme qui se trouve sur la même ligne que le type ?

"Pour pouvoir appliquer le même genre de formules aux prix il faudrait que les prix soient dans des cellules dans la même colonne que les types (et non à côté)"

Je joins le tableau qui me servira de modèle, si tu as quelques idées pour éviter les lignes de totalisation 39 à 46, ou tout autre amélioration. Je suis preneur.

De plus, existe t-il une solution pour supprimer les formules portant sur des cellules que n'existent plus. Je m'explique : pour une opération avec moins d'étages et d'appartement, je dois supprimer des lignes complètes ou des colonnes ce qui génère des formules avec #REF#! au lieu des références lignes, colonnes habituelles. Formules que je dois supprimer pour que mon tableau soit opérationnel.

Voila, j'arrête là mes doléances.

Bonne soirée.
Cordialement.

https://www.cjoint.com/?DFsxJOsHFxz
0
via55 Messages postés 14408 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 5 mai 2024 2 705
21 juin 2014 à 21:18
Bonsoir Zebulon

Plus de connection Internet ces derniers jours ! Je découvre ton message aujourd'hui

SOMME.SI sur une même plage ne peut s'employer que si les valeurs servant à la condition et celles servant à la somme sont les mêmes
Par exemple : somme.si(plage x;>1000;plage x) fera la somme des valeurs de plage x supérieures à 1000
mais dans ton cas tu veux faire la somme des prix pour un type d'appartement donc les 2 plages doivent être distinctes et qu'à chaque cellule d'un type corresponde sur l'autre colonne (ou l'autre ligne, tout dépend comment tu prends les plages au départ) un prix

Ce qui complique tout dans ton tableau c'est que les différentes infos pour un appartement se retrouvent sur des colonnes ET des lignes différentes
En fait il aurait sans doute été plus simple pour l'exploitation des données d'avoir par étage une ligne par appartement avec une colonne Type, une colonne Prix, une colonne m² etc ..
Pour sommer ou comparer les prix il n'y aurait qu'à considérer qu'une seule colonne

Je ne comprends pas tout dans tes lignes de totalisation, comme ton tableau est vide je ne me rends pas bien compte de ce que doivent retourner les formules, il me faudrait un tableau rempli car je ne sais pas ce que tu mets et dans quelle cellules pour chaque appartement

Enfin s'il y a moins d'étages, si tu veux éviter les REF tu peux toujours au lieu de supprimer des lignes simplement les laisser vides et les masquer

Quant aux formules qui produisent des erreurs quand les cellules ne sont pas renseignées, ex :=ARRONDI(E49/$E$53;2) en D49 il suffit de gérer l'erreur dans la formule : =SIERREUR(ARRONDI(E49/$E$53;2);"") par ex pour renvoyer du vide en cas d'erreur (ou 0 si tu remplaces les "" à la fin par 0)

Cdlmnt
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Zebulon97 Messages postés 47 Date d'inscription mardi 15 septembre 2009 Statut Membre Dernière intervention 26 novembre 2017
22 juin 2014 à 11:27
Bonjour Via55,

Merci pour ces renseignements. Je prends bonne note de tes remarques et met ce post en résolu.
Bonne journée.
Cordialement
0