SOM.ALS
Bepaalt welke waarden in een celbereik aan een opgegeven criterium voldoen en retourneert vervolgens de som van de overeenkomende waarden. Als alternatief kan de functie bepalen welke waarden in één celbereik aan een criterium voldoen en vervolgens de som van de waarden in de overeenkomstige cellen in een tweede celbereik retourneren.
SOM.ALS kan slechts één criterium op een bereik toepassen. Gebruik SOMMEN.ALS als u meerdere criteria moet toepassen.
SOM.ALS(Bereik; Criterium [;SomBereik])
Bereik: Het celbereik waarop het criterium wordt toegepast.
SOM.ALS ondersteunt de verwijzingkoppelingsoperator (~) alleen in de parameter Bereik en alleen als de optionele parameter SomBereik niet is opgegeven.
Criterium: Een criterium is een enkele cel Referentie, Getal of Tekst. Het wordt gebruikt in vergelijkingen met celinhoud.
Een verwijzing naar een lege cel wordt geïnterpreteerd als de numerieke waarde 0.
Een overeenkomende uitdrukking kan zijn:
-
Een getal of logische waarde. Een overeenkomende celinhoud is gelijk aan het getal of de logische waarde.
-
Een waarde die begint met een vergelijker (, <=, =, >, >=, <>).
Voor =: als de waarde leeg is, komt deze overeen met lege cellen.
Voor <> geldt dat als de waarde leeg is, deze overeenkomt met niet-lege cellen.
Als de waarde voor <> niet leeg is, komt deze overeen met alle celinhoud behalve de waarde, inclusief lege cellen.
Opmerking: "=0" komt niet overeen met lege cellen.
Voor = en <>, als de waarde niet leeg is en niet kan worden geïnterpreteerd als een getaltype of een van de subtypen ervan en de eigenschap Zoekcriteria = en <> moeten op hele cellen van toepassing zijn is aangevinkt, de vergelijking vindt plaats met de volledige celinhoud, als niet aangevinkt, wordt er vergeleken met elk subgedeelte van het veld dat aan de criteria voldoet. Voor = en <>, als de waarde niet leeg is en niet kan worden geïnterpreteerd als een getaltype of als een van de subtypen ervan van toepassing is.
-
Andere tekstwaarde. Als de eigenschap Zoekcriteria = en <> moeten gelden voor hele cellen waar is , is de vergelijking met de gehele celinhoud. Als deze niet waar is, wordt er met elk subdeel van het veld vergeleken dat aan de criteria voldoet. De expressie kan tekst, getallen, reguliere expressies of jokertekens bevatten (indien ingeschakeld in berekeningsopties).
De zoekopdracht ondersteunt jokertekens of reguliere expressies. Als reguliere expressies zijn ingeschakeld, kunt u "all.*" invoeren, bijvoorbeeld om de eerste locatie van "all" te vinden, gevolgd door willekeurige tekens. Als u wilt zoeken naar een tekst die ook een reguliere expressie is, moet u elk metateken of operator van een reguliere expressie laten voorafgaan door een "\"-teken, of de tekst in \Q...\E insluiten. U kunt de automatische evaluatie van jokertekens of reguliere expressies in- en uitschakelen in .
Wanneer u functies gebruikt waarbij een of meer argumenten tekenreeksen voor zoekcriteria zijn, die een reguliere expressie vertegenwoordigen, is de eerste poging om de tekenreekscriteria om te zetten naar getallen. ".0" wordt bijvoorbeeld omgezet naar 0,0 enzovoort. Als dit lukt, is de overeenkomst geen overeenkomst met een reguliere expressie, maar een numerieke overeenkomst. Als u echter overschakelt naar een landinstelling waar het decimaalteken niet de punt is, werkt de conversie van reguliere expressies. Om de uitvoering van de reguliere expressie af te dwingen in plaats van een numerieke expressie, gebruikt u een expressie die niet verkeerd kan worden gelezen als numeriek, zoals ". [0]" of ". \ 0" of "(? I) .0".
SomBereik: Optioneel. Het bereik van cellen waaruit waarden worden opgeteld. Als er geen SomBereik is opgegeven, worden de waarden in de Bereik opgeteld.
Deze functie maakt deel uit van het Open Document Format voor Office Applications (OpenDocument) standaard versie 1.2. (ISO/IEC 26300: 2-2015)
Overweeg de volgende tabel
|
A
|
B
|
C
|
1
|
Productnaam
|
Sales
|
Revenue
|
2
|
potlood
|
20
|
65
|
3
|
pen
|
35
|
85
|
4
|
kladblok
|
20
|
190
|
5
|
boek
|
17
|
180
|
6
|
etui
|
niet
|
niet
|
In alle onderstaande voorbeelden, bevatten bereiken voor berekening de rij # 6, die genegeerd wordt omdat deze tekst bevat.
Eenvoudig gebruik
=SOM.ALS(C2:C6,">=100")
Telt alleen de waarden uit bereik C2:C6 op die >=100 zijn. Retourneert 370 omdat de cellen C2:C3 niet aan het criterium voldoen. De waarden uit Bereik worden opgeteld omdat er geen SomBereik wordt opgegeven.
=SOM.ALS(B2:B5,">=20",C2:C6)
Telt waarden uit het bereik B2:B6 alleen op als de overeenkomstige waarden in het bereik A1:A5 >=20 zijn. Retourneert 340 omdat de vijfde en zesde rij niet aan het criterium voldoen.
Reguliere expressies gebruiken
=SOM.ALS(A2:A6,"pen",C2:C5)
Telt waarden uit het bereik C2:C6 alleen op als het overeenkomstige bereik in A2:A6 exact overeenkomt met de letters "pen". Retourneert 85 omdat rijen A2 en A4:A6 niet aan het criterium voldoen.
=SOM.ALS(A2:A6,"pen*",C2:C6)
Telt de waarden uit het bereik C2:C6 alleen op als de overeenkomstige cel in bereik A2:A6 de letters "pen" bevat. Retourneert de waarde 150 omdat rijen A4:A5 niet aan het criterium voldoen.
=SOM.ALS(ProductNaam,"pen*",Omzet)
Een benoemd bereik kan worden opgegeven als de parameter Bereik of SomBereik. Als de kolommen in de bovenstaande tabel bijvoorbeeld respectievelijk "Productnaam", "Verkoop" en "Omzet" heten, retourneert de functie 150. Deze functie werkt alleen zoals beschreven als u de namen van de kolommen hebt gedefinieerd met behulp van het dialoogvensterNamen definiëren.
Verwijzing naar een cel als criterium
Als u een criterium eenvoudig wilt wijzigen, kunt u dit in een aparte cel opgeven en een verwijzing naar deze cel gebruiken in de voorwaarde van de functie SOM.ALS. Bijvoorbeeld:
=SOM.ALS(A2:A6,E2,C2:C6)
Als E2 = pen, retourneert de functie 85 omdat de koppeling naar de cel wordt vervangen door de inhoud ervan.