• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Sumproduct

Status
Niet open voor verdere reacties.

heaobeer

Gebruiker
Lid geworden
26 jul 2004
Berichten
44
Ik heb een grote lijst met rekeningomschrijvingen (kolom A), (kolom B) valutacodes en (Kolom C) bedragen. Ik wil de totale bedragen berekenen per rekening in een bepaalde valuta.

Rekeningomschrijvingen kunnen in diverse valuta voorkomen.

=sumproduct(($C$1:$C$5000)*(($A$1:$A$5000="Omschrijving X")+($B$1:$B$5000="Valuta X")))

Deze formule geeft niet het gewenste resultaat.
 
SomProduct werkt alleen als je in de op te tellen kolom cijfers hebt staan. Als je in de eerste regel kolom-omschrijvingen hebt staan gaat het mis. Je zou dan de formule moeten starten op regel 2, ipv regel 1.
Hopelijk lost dit je probleem op.

John
 
John,

Ik snap niet precies wat je bedoelt. De eerste kolom van de formule (C) bevat getallen.
 
Klopt, maar als de kolom er alsvolgd uitziet:
Bedarg
10
20
26
98
52

dan begint de eerste rij dus met een woord. Je formule moet dan zijn:
=sumproduct(($C$2:$C$5000)*(($A$2:$A$5000="Omschrijving X")+($B$2:$B$5000="Valuta X")))

Hopelijk maakt dit het een beetje helderder..
John
 
John,

Duidelijk, maar dit is niet het probleem. In de formule wil ik de totalen van een bepaalde rekeningomschrijving in een bepaalde valuta. In bovenstaande formule wordt het totaal van een rekeningomschrijving opgeteld bij het totaal van een bepaalde valutacode. Dit is incorrect.
Er moeten aan twee voorwaarden worden voldaan en dit moet bij elkaar worden opgeteld.
 
Ik sla de plank weer lekker mis ;-)
Volgens mij is de oplossing vermenigvuldigen in plaats van optellen:

=sumproduct(($C$1:$C$5000)*(($A$1:$A$5000="Omschrijving X")*($B$1:$B$5000="Valuta X")))
 
Je maakt het knap ingewikkeld. Kun je misschien een voorbeeldje online zetten om een beter beeld te krijgen?
 
Hoi Heaobeer,

In het verleden wel vaker geholpen met somproduct. Ik weet exact waar het fout gaat!

Wat je wilt is dat als of het rekeningnummer aan je voorwaarde voldoet of de valuta aan je voorwaarde voldoet het bedrag wordt opgeteld.
=(($A$1:$A$5000="Omschrijving X")+($B$1:$B$5000="Valuta X"))
Deze optelling doet dat ook indien voldaan wordt aan een van de twee voorwaarden (0+1 of 1+0). Maar als aan beide voorwaarden voldaan wordt, dan is de uitkomst 2 (1+1). Dat vermenigvuldigen met het bedrag en voila daar gaat je som.

Oplossing:
=sumproduct(($C$1:$C$5000)*(($A$1:$A$5000="Omschrijving X")+($B$1:$B$5000="Valuta X")>0))

Later zet je in deze thread dat aan beide voorwaarden voldaan moet worden.
In dat geval kun beter ervoor kiezen om te vermenigvuldigen zoals John aangegeven heeft (1*1=1 en 1*0=0;0*1=0 en 0*0=0). Ook zou je ervoor kunnen kiezen:
=sumproduct(($C$1:$C$5000)*(($A$1:$A$5000="Omschrijving X")+($B$1:$B$5000="Valuta X")=2))

Jeroen

P.S. Bij somproduct en matrix-formules helpt het vaak om de formule eerst van toepassing te maken op 10 of 20 cellen. Dan zie je eerder of er iets fout gaat en wat. In het geval van Somproduct laat je de somproduct dan even achterwege zodat je de ontstane matrix kunt zien. Matrix- formules voor je expres niet is als matrix-formule.
Met F2 -> F9 kun je het resultaat zien.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan