Combinatie
Verschillen boven de rapportagegrens met LET, FILTER, HOR.STAPELEN en ABS
Stem het grootboek per debiteur af op de specificatie van de cliënt en toon alleen de verschillen boven de rapportagegrens: LET geeft de verschillen één keer een naam, HOR.STAPELEN zet er de debiteur naast, FILTER houdt de rijen over waarvan ABS boven de grens uitkomt.
Gebruikte functies:LETFILTERHOR.STAPELENABSExcel 2024 of nieuwer (Deze combinatie vereist Excel 2024 of nieuwer)
Uitgewerkt voorbeeld
Debiteurenverschillen boven de grens
Situatie
Bij de controle van Veldhuis Installatie BV vergelijk je het debiteurensaldo per klant in het grootboek met de ouderdomsanalyse van de cliënt per 31 december 2025. De rapportagegrens is vastgesteld op 2,5002.500. Je wilt een lijst met alleen de klanten waarvan het verschil groter is dan dat, in beide richtingen, om aan de cliënt voor te leggen.
De gegevens
| Rij | A | B | C | D | E | F | G |
|---|---|---|---|---|---|---|---|
| 1 | Relatie | Grootboek | Specificatie | Rapportagegrens | €2,500.00€ 2.500,00 | ||
| 2 | D1001 | €18,450.00€ 18.450,00 | €18,450.00€ 18.450,00 | ||||
| 3 | D1002 | €12,300.00€ 12.300,00 | €14,800.00€ 14.800,00 | D1004=LET(verschil, B2:B7-C2:C7, FILTER(HOR.STAPELEN(A2:A7, verschil), ABS(verschil)>F1, "Geen verschillen boven de grens"))=LET(verschil; B2:B7-C2:C7; FILTER(HOR.STAPELEN(A2:A7; verschil); ABS(verschil)>F1; "Geen verschillen boven de grens")) | €4,500.00€ 4.500,00 | ||
| 4 | D1003 | €9,875.00€ 9.875,00 | €9,575.00€ 9.575,00 | D1006 | -€2,930.00€ -2.930,00 | ||
| 5 | D1004 | €25,600.00€ 25.600,00 | €21,100.00€ 21.100,00 | ||||
| 6 | D1005 | €7,420.00€ 7.420,00 | €7,420.00€ 7.420,00 | ||||
| 7 | D1006 | €16,050.00€ 16.050,00 | €18,980.00€ 18.980,00 | ||||
| 8 |
Veeg opzij om alle kolommen te zien
Formule in E3
=LET(verschil,B2:B7-C2:C7, FILTER(HOR.STAPELEN(A2:A7, verschil), ABS(verschil)>F1, "Geen verschillen boven de grens"))
=LET(verschil;B2:B7-C2:C7; FILTER(HOR.STAPELEN(A2:A7; verschil); ABS(verschil)>F1; "Geen verschillen boven de grens"))
B2:B7-C2:C7Druk op Escape om te sluitenB2:B7-C2:C7Druk op Escape om te sluitenB2:B7-C2:C7Druk op Escape om te sluitenResultaat: D1004 | €4,500.00 / D1006 | -€2,930.00D1004 | € 4.500,00 / D1006 | € -2.930,00
Hoe de onderdelen samenwerken
De formule uit elkaar gehaald, van binnen naar buiten. Je kunt elk onderdeel in een eigen cel typen om te zien wat het teruggeeft.
=B2:B7-C2:C7
=B2:B7-C2:C7
VerwijzingKolom Grootboek, 6 cellenDruk op Escape om te sluiten-Trekt afDruk op Escape om te sluitenVerwijzingKolom Specificatie, 6 cellenDruk op Escape om te sluitenTrekt de specificatie af van het grootboek, debiteur voor debiteur. Het resultaat is één kolom van zes verschillen: 0, -2.500, 300, 4.500, 0 en -2.930.
=ABS(B2:B7-C2:C7)>F1
=ABS(B2:B7-C2:C7)>F1
getalHet getal, de cel of de berekening waarvan je het teken wilt weghalen.Kolom Grootboek, 6 cellenDruk op Escape om te sluiten-Trekt afDruk op Escape om te sluitenVerwijzingKolom Specificatie, 6 cellenDruk op Escape om te sluiten>Groter danDruk op Escape om te sluitenVerwijzingInvoercel: €2,500.00€ 2.500,00Druk op Escape om te sluitenABS haalt het teken weg, dus een tekort van -2.930 telt als 2.930. Vergeleken met de grens van 2.500 in
F1geeft dit ONWAAR, ONWAAR, ONWAAR, WAAR, ONWAAR, WAAR.D1002is precies 2.500 en ligt dus niet boven de grens.=HOR.STAPELEN(A2:A7,
B2:B7-C2:C7) =HOR.STAPELEN(A2:A7;
B2:B7-C2:C7) HOR.STAPELEN HSTACKZet bereiken naast elkaar.Lees meer over HOR.STAPELENDruk op Escape om te sluitenmatrix1Het eerste bereik of de eerste matrix; die komt in de meest linkse kolommen.Kolom Relatie, 6 cellenDruk op Escape om te sluitenmatrix2 (optioneel)Nog een bereik of matrix dat rechts komt; voeg er zoveel toe als je nodig hebt.Kolom Grootboek, 6 cellenDruk op Escape om te sluiten-Trekt afDruk op Escape om te sluitenVerwijzingKolom Specificatie, 6 cellenDruk op Escape om te sluitenHOR.STAPELEN zet de debiteurcodes naast de verschillen: een tabel van 6 rijen en 2 kolommen, van
D1001met 0 totD1006met -2.930.=FILTER(HOR.STAPELEN(A2:A7,
B2:B7-C2:C7), ABS(B2:B7-C2:C7)>F1, "Geen verschillen boven de grens") =FILTER(HOR.STAPELEN(A2:A7;
B2:B7-C2:C7); ABS(B2:B7-C2:C7)>F1; "Geen verschillen boven de grens") FILTERGeeft elke rij van een bereik die aan een voorwaarde voldoet.Lees meer over FILTERDruk op Escape om te sluitenHOR.STAPELEN HSTACKZet bereiken naast elkaar.Hier gebruikt als: matrixDe rijen die je terug wilt: één kolom of een hele tabel.Lees meer over HOR.STAPELENDruk op Escape om te sluitenmatrix1Het eerste bereik of de eerste matrix; die komt in de meest linkse kolommen.Kolom Relatie, 6 cellenDruk op Escape om te sluitenmatrix2 (optioneel)Nog een bereik of matrix dat rechts komt; voeg er zoveel toe als je nodig hebt.Kolom Grootboek, 6 cellenDruk op Escape om te sluiten-Trekt afDruk op Escape om te sluitenVerwijzingKolom Specificatie, 6 cellenDruk op Escape om te sluitenABSDe waarde zonder teken.Hier gebruikt als: opnemenEen WAAR/ONWAAR per rij, even hoog als matrix (even breed voor kolommen): wat blijft.Lees meer over ABSDruk op Escape om te sluitengetalHet getal, de cel of de berekening waarvan je het teken wilt weghalen.Kolom Grootboek, 6 cellenDruk op Escape om te sluiten-Trekt afDruk op Escape om te sluitenVerwijzingKolom Specificatie, 6 cellenDruk op Escape om te sluiten>Groter danDruk op Escape om te sluitenVerwijzingInvoercel: €2,500.00€ 2.500,00Druk op Escape om te sluitenals_leeg (optioneel)Wat je ziet als geen rij voldoet; zonder dit krijg je #BEREKENEN!.Druk op Escape om te sluitenFILTER houdt alleen de rijen van de tabel over waar WAAR staat:
D1004met 4.500 enD1006met -2.930. Het verschil wordt hier twee keer berekend, en dat is waarom LET zinvol is.=LET(verschil,
B2:B7-C2:C7, FILTER(HOR.STAPELEN(A2:A7, verschil), ABS(verschil)>F1, "Geen verschillen boven de grens")) =LET(verschil;
B2:B7-C2:C7; FILTER(HOR.STAPELEN(A2:A7; verschil); ABS(verschil)>F1; "Geen verschillen boven de grens")) LETGeeft tussenwaarden een naam zodat een formule leesbaar wordt en elk stuk één keer rekent.Lees meer over LETDruk op Escape om te sluitennaam1De naam voor de eerste waarde. Moet met een letter beginnen.Variabele die in deze LET is gedefinieerdGekoppeld aan:B2:B7-C2:C7Druk op Escape om te sluitennaam_waarde1De waarde of expressie waar naam1 voor staat.Kolom Grootboek, 6 cellenDruk op Escape om te sluiten-Trekt afDruk op Escape om te sluitenVerwijzingKolom Specificatie, 6 cellenDruk op Escape om te sluitenFILTERGeeft elke rij van een bereik die aan een voorwaarde voldoet.Hier gebruikt als: calculatie_of_naam2De uiteindelijke berekening, of de volgende naam die je definieert.Lees meer over FILTERDruk op Escape om te sluitenHOR.STAPELEN HSTACKZet bereiken naast elkaar.Hier gebruikt als: matrixDe rijen die je terug wilt: één kolom of een hele tabel.Lees meer over HOR.STAPELENDruk op Escape om te sluitenmatrix1Het eerste bereik of de eerste matrix; die komt in de meest linkse kolommen.Kolom Relatie, 6 cellenDruk op Escape om te sluitenmatrix2 (optioneel)Nog een bereik of matrix dat rechts komt; voeg er zoveel toe als je nodig hebt.Variabele die in deze LET is gedefinieerdGekoppeld aan:B2:B7-C2:C7Druk op Escape om te sluitenABSDe waarde zonder teken.Hier gebruikt als: opnemenEen WAAR/ONWAAR per rij, even hoog als matrix (even breed voor kolommen): wat blijft.Lees meer over ABSDruk op Escape om te sluitengetalHet getal, de cel of de berekening waarvan je het teken wilt weghalen.Variabele die in deze LET is gedefinieerdGekoppeld aan:B2:B7-C2:C7Druk op Escape om te sluiten>Groter danDruk op Escape om te sluitenVerwijzingInvoercel: €2,500.00€ 2.500,00Druk op Escape om te sluitenals_leeg (optioneel)Wat je ziet als geen rij voldoet; zonder dit krijg je #BEREKENEN!.Druk op Escape om te sluitenLET rekent B2:B7-C2:C7 één keer uit onder de naam verschil en gebruikt het twee keer. Het resultaat is dezelfde twee rijen:
D10044.500 enD1006-2.930. Komt niets boven de grens uit, dan verschijnt de melding.
Stap voor stap
- LET bewaart B2:B7-C2:C7 als verschil: 18,45018.450-18,45018.450 = 0; 12,30012.300-14,80014.800 = -2,5002.500; 9,8759.875-9,5759.575 = 300; 25,60025.600-21,10021.100 = 4,5004.500; 7,4207.420-7,4207.420 = 0; 16,05016.050-18,98018.980 = -2,9302.930.
- ABS(verschil) geeft 0, 2,5002.500, 300, 4,5004.500, 0 en 2,9302.930, dus elk verschil is nu positief.
- Vergelijken met
F1(2,5002.500): 0 niet erboven, 2,5002.500 niet erboven (gelijk), 300 niet erboven, 4,5004.500 erboven, 0 niet erboven, 2,9302.930 erboven. Dat geeft ONWAAR, ONWAAR, ONWAAR, WAAR, ONWAAR, WAAR. - HOR.STAPELEN(A2:A7; verschil) bouwt een tabel van 6 rijen:
D10010,D1002-2,5002.500,D1003300,D10044,5004.500,D10050,D1006-2,9302.930. Het verschil met teken blijft behouden, niet de ABS-waarde. - FILTER houdt rij 4 en 6 over, waar de test WAAR is:
D1004met 4,5004.500 (grootboek hoger) enD1006met -2,9302.930 (grootboek lager). Het resultaat loopt overE3:F4.
Waarom het werkt
Het verschil heb je twee keer nodig: als waarde om te tonen en als waarde om te toetsen. LET rekent het één keer uit en geeft het een naam, zodat beide plekken niet uit elkaar kunnen lopen.
ABS zorgt dat de toets werkt voor zowel te hoge als te lage saldi, terwijl de tabel het teken blijft tonen. Dat vertelt je in welke richting je de cliënt moet bevragen. FILTER doet de selectie en het laatste argument vangt het geval op dat alles onder de grens blijft.
Let op
- Zonder ABS vindt de toets verschil>F1 alleen positieve verschillen.
D1006met -2,9302.930 valt dan zonder melding weg, terwijl juist daar het grootboek lager is dan de eigen lijst van de cliënt. - De toets is strikt groter dan de grens.
D1002verschilt precies 2,5002.500 en staat niet in de lijst. Hanteert je dossier 'tot en met' als grens, of wil je de randgevallen zien, gebruik dan >=. - Beide lijsten moeten de debiteuren in dezelfde volgorde hebben. Deze formule trekt rij voor rij af en zoekt niet op debiteurcode. Is de specificatie anders gesorteerd, zoek de specificatie dan eerst op (bijvoorbeeld met X.ZOEKEN op kolom
A).
Varianten
=FILTER(A2:C7,ABS(B2:B7-C2:C7)>F1, "Geen verschillen boven de grens")
=FILTER(A2:C7;ABS(B2:B7-C2:C7)>F1; "Geen verschillen boven de grens")
Zonder LET en HOR.STAPELEN: FILTER op de brongegevens. Het toont D1004 en D1006 met grootboek en specificatie (25,60025.600 en 21,10021.100; 16,05016.050 en 18,98018.980), maar niet het verschil zelf.
=SOMPRODUCT(--(ABS(B2:B7-C2:C7)>F1))
=SOMPRODUCT(--(ABS(B2:B7-C2:C7)>F1))
De oudere manier om te tellen: SOMPRODUCT met een dubbele min maakt van de WAAR-waarden enen. Het geeft 2, het aantal verschillen boven de grens, maar niet om welke debiteuren het gaat.
=SOMPRODUCT((ABS(B2:B7-C2:C7)>F1)*(B2:B7-C2:C7))
=SOMPRODUCT((ABS(B2:B7-C2:C7)>F1)*(B2:B7-C2:C7))
Het netto totaal van de verschillen boven de grens: 4,5004.500 + -2,9302.930 = 1,5701.570. Handig als controlegetal naast de lijst.
Verwante combinaties
Gebruikte functies
- LETGeeft een waarde of tussenresultaat binnen één formule een naam, zodat je het op naam hergebruikt en Excel het maar één keer berekent.
- FILTERHaalt alle rijen uit een bereik die aan je voorwaarde voldoen, als lijst die naar de cellen eronder overloopt en zich aanpast zodra de gegevens veranderen.
- HOR.STAPELENZet bereiken of matrices van links naar rechts naast elkaar tot één overlopend blok dat meebeweegt met de bronnen.
- ABSHaalt het teken van een getal weg, zodat een tekort en een overschot van dezelfde grootte even ver van nul liggen.
Gebruikte functies
- LETGeeft een waarde of tussenresultaat binnen één formule een naam, zodat je het op naam hergebruikt en Excel het maar één keer berekent.
- FILTERHaalt alle rijen uit een bereik die aan je voorwaarde voldoen, als lijst die naar de cellen eronder overloopt en zich aanpast zodra de gegevens veranderen.
- HOR.STAPELENZet bereiken of matrices van links naar rechts naast elkaar tot één overlopend blok dat meebeweegt met de bronnen.
- ABSHaalt het teken van een getal weg, zodat een tekort en een overschot van dezelfde grootte even ver van nul liggen.