Fonction SOMME.SI.ENS
Renvoie la somme des valeurs des cellules d'une plage qui répond à des critères multiples dans plusieurs plages.
Cette fonction est disponible depuis LibreOffice 4.0
SOMME.SI(Plage_Fonction;Plage1;Critère1 [;Plage2;Critère2 [;...]]))
plage_fonction – argument requis. C'est une plage de cellules, un nom d'une plage nommée ou une étiquette de colonne ou de ligne contenant les valeurs pour le calcul de la somme.
Critère1 - argument requis. Une expression de chaîne représentant une condition logique ou une référence de cellule à une telle expression de chaîne. L'expression peut contenir du texte, des nombres, des expressions régulières ou des caractères génériques ( si activé dans les options de calcul).
Plage2 – Facultatif. Plage2 et tous les arguments suivants ont la même signification que Plage1.
critère2 – facultatif. Critère2 et tous les autres ont la même signification que critère1.
The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every character with a "\" character, or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in .
When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".
Plage_Fonction et Plage1, Plage2... doivent avoir la même taille, sinon la fonction renvoie une err502 - argument incorrecte.
La relation logique entre les critères peut être définie comme ET logique (conjonction). En d'autres termes, si et seulement si tous les critères donnés sont satisfaits, une valeur de la cellule correspondante de la plage donnée Plage_Fonction est prise en compte dans le calcul.
La fonction peut avoir jusqu'à 255 arguments, ce qui signifie que 127 plages de critères et critères peuvent leur être spécifié
Si une cellule contient VRAI, elle est traitée comme 1, si une cellule contient FAUX - comme 0 (zéro)
Cette fonction fait partie du standard Open Document Format for Office Applications (Open Document) Version 1.2 (ISO/IEC 26300:2-2015)
Examinez le tableau suivant
|
A
|
B
|
C
|
1
|
Nom du produit
|
Ventes
|
Chiffre d'affaires
|
2
|
crayon
|
20
|
65
|
3
|
stylo
|
35
|
85
|
4
|
bloc-notes
|
20
|
190
|
5
|
livre
|
17
|
180
|
6
|
trousse
|
non
|
non
|
Dans tous les exemples ci-dessous, les plages de calcul contiennent la ligne #6, qui est ignorée parce qu'elle contient du texte.
Usage simple
=SOMME.SI.ENS(B2:B6;B2:B6;">=20")
Calcule la somme des valeurs de la plage B2:B6 qui sont supérieures ou égales à 20. Renvoie 75 parce que la cinquième ligne ne correspond pas au critère.
=SOMME.SI.ENS(C2:C6;B2:B6;">=20";C2:C6;">70")
Calcule la somme des valeurs de la plage C2:C6 qui sont supérieures à 70 et correspondent aux cellules de la plage B2:B6 dont les valeurs sont supérieures ou égales à 20. Renvoie 275, parce que les seconde et cinquième lignes ne correspondent pas à au moins un critère.
Utilisation des expressions régulières et des fonctions imbriquées
=SOMME.SI.ENS(C2:C6;B2:B6;">"&MIN(B2:B6);B2:B6;"<"&MAX(B2:B6))
Calcule la somme des valeurs de la plage C2:C6 qui correspondent à toutes les valeurs de la plage B2:B6 à l'exception de ses minimum et maximum. Renvoie 255, parce que les troisième et cinquième lignes ne correspondent pas à au moins un critère.
=SOMME.SI.ENS(C2:C6;A2:A6;"crayon.*";B2:B6;"<"&MAX(B2:B6))
Calcule la somme des valeurs de la plage C2:C6 qui correspondent à toutes les cellules de la plage A2:A6 commençant par "crayon" et à toutes les cellules de la plage B2:B6 excepté son maximum. Renvoie 65, parce que uniquement la seconde ligne correspond à tous les critères.
Référence à une cellule comme critère
Si vous avez besoin de modifier facilement un critère, vous le spécifiez dans une cellule séparée et utilisez une référence à cette cellule dans la condition de la fonction SOMME.SI.ENS. Par exemple, la fonction ci-dessous peut être réécrite de la façon suivante :
=SOMME.SI.ENS(C2:C6;A2:A6;".*";B2:B6;"<"&MAX(B2:B6))
Si E2=crayon, la fonction renvoie 65 parce que le lien à la cellule est substitué par son contenu.