SOMME.SIS
La fonction SOMME.SIS renvoie la somme des cellules d’une collection dans laquelle les valeurs testées répondent aux conditions données.
SOMME.SIS(valeurs-sommes; valeurs-test; condition; valeurs-test…; condition…)
valeurs-sommes : Collection comportant les valeurs dont on souhaite établir la somme. valeurs-sommes peut contenir des valeurs numériques, des valeurs de date/heure ou des valeurs de durée.
valeurs-test : Collection comportant les valeurs à tester. valeurs-test peut contenir une valeur quelconque.
condition : Une expression qui compare ou teste des valeurs et qui renvoie la valeur booléenne VRAI ou FAUX. condition peut comprendre des opérateurs de comparaison, des constantes, l’opérateur de concaténation esperluette, des références et des caractères génériques. Les caractères génériques permettent de faire correspondre un ou plusieurs caractères dans une expression. Vous pouvez utiliser ? (point d’interrogation) pour représenter un caractère, * (astérisque) pour représenter plusieurs caractères et ~ (tilde) pour indiquer que le caractère suivant doit être utilisé littéralement et non comme caractère générique. condition peut également contenir une fonction EXP.REG au lieu de caractères génériques.
valeurs-test… : Vous pouvez également ajouter une ou plusieurs collections contenant des valeurs à évaluer. Chaque collection de valeurs-test doit être immédiatement suivie d’une expression condition. Cette succession valeurs-test; condition peut être répétée autant de fois que nécessaire.
condition… : condition… est une expression supplémentaire qui renvoie une valeur booléenne VRAI ou FAUX, si une collection facultative de valeurs-test est précisée. Une condition doit obligatoirement être placée après chaque argument valeurs-test. Par conséquent, cette fonction présente toujours un nombre impair d’arguments.
Remarques
Pour chaque paire de valeurs de test et de condition, la cellule ou valeur correspondante (même position dans la collection) est comparée à la condition. Si toutes les conditions sont remplies, la cellule ou sa valeur correspondante dans valeurs-sommes est intégrée au calcul de la somme.
Toutes les collections doivent présenter les mêmes dimensions.
Exemples |
---|
Prenons le tableau suivant : |
A | B | C | |
---|---|---|---|
1 | Tonnes | Classement | Date |
2 | 6 | 1 | 10/12/2012 |
3 | 15 | 2 | 10/12/2012 |
4 | 5 | 1 | 13/12/2012 |
5 | 7 | 2 | 13/12/2012 |
6 | 8 | 2 | 14/12/2012 |
7 | 6 | 1 | 15/12/2012 |
8 | 7 | 2 | 15/12/2012 |
9 | 4 | 2 | 16/12/2012 |
10 | 7 | 1 | 16/12/2012 |
11 | 8 | 2 | 16/12/2012 |
12 | 5 | 1 | 17/12/2012 |
13 | 11 | 2 | 20/12/2012 |
=SOMME.SIS(A2:A13; B2:B13; "=1"; C2:C13;">=13/12/2012"; C2:C13; "<=17/12/2012") renvoie 23, le nombre de tonnes de marchandises livrées au cours de la semaine du 17 décembre et classées « 1 ». La collection A2:A13 contient le nombre de tonnes, autrement dit les valeurs à additionner (valeurs-sommes). La collection B2:B13 (valeurs-tests) contient la première valeur à tester pour un classement de 1 (condition). La collection C2:C13 (valeurs-test) contient la seconde valeur à tester à la recherche d’une correspondance avec une date de départ (condition…). Ce même intervalle contient également la troisième valeur à tester, une date de fin. Les rangs 4 (5 tonnes), 7 (6 tonnes), 10 (7 tonnes) et 12 (5 tonnes) satisfont à toutes les conditions et leur somme est 23 tonnes. Vous pouvez également utiliser les opérateurs ≥ et ≤. =SOMME.SIS(A2:A13; B2:B13; "=2"; C2:C13; ">=13/12/2012"; C2:C13; "<=17/12/2012") renvoie 34, le nombre de tonnes de marchandises livrées au cours de la même semaine et classées 2. Vous pouvez également utiliser les opérateurs ≥ et ≤. =SOMME.SIS(A2:A13; B2:B13; "<>2"; C2:C13; ">=10/12/2012"; C2:C13; "<=20/12/2012") renvoie 29, le nombre de tonnes de marchandises livrées au cours de n’importe quelle semaine et qui ne sont pas classées 2. Vous pouvez également utiliser les opérateurs ≠, ≥ et ≤. |
Exemple d’utilisation de la fonction EXP.REG |
---|
Prenons le tableau suivant : |
A | B | |
---|---|---|
1 | 45 | marina@example.com |
2 | 41 | Arnaud |
3 | 29 | michael@example.com |
4 | 64 | jake@example.com |
5 | 12 | Sarah |
=SOMME.SIS(A1:A5; B1:B5; EXP.REG("([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})",); A1:A5; ">10") renvoie 138, la somme des cellules au sein de A1:A5 qui sont supérieures à 10 et pour lesquelles la cellule correspondante dans B1:B5 contient une adresse e-mail. |