HOR.STAPELEN
HSTACK in Engelstalige Excel
Zet bereiken of matrices van links naar rechts naast elkaar tot één overlopend blok dat meebeweegt met de bronnen.
Laatst bijgewerkt: 13 oktober 2026
| Rij | A | B | C | D | E | F | G | H |
|---|---|---|---|---|---|---|---|---|
| 1 | Rekening | Naam | Debet | Credit | ||||
| 2 | 11001100 | Bank | €48,250.00€ 48.250,00 | €0.00€ 0,00 | 11001100=HOR.STAPELEN(A2:A6, C2:D6)=HOR.STAPELEN(A2:A6; C2:D6) | €48,250.00€ 48.250,00 | €0.00€ 0,00 | |
| 3 | 13001300 | Debiteuren | €62,100.00€ 62.100,00 | €0.00€ 0,00 | 13001300 | €62,100.00€ 62.100,00 | €0.00€ 0,00 | |
| 4 | 16001600 | Crediteuren | €0.00€ 0,00 | €41,350.00€ 41.350,00 | 16001600 | €0.00€ 0,00 | €41,350.00€ 41.350,00 | |
| 5 | 18001800 | Btw-schuld | €0.00€ 0,00 | €7,820.00€ 7.820,00 | 18001800 | €0.00€ 0,00 | €7,820.00€ 7.820,00 | |
| 6 | 80008000 | Omzet | €0.00€ 0,00 | €61,180.00€ 61.180,00 | 80008000 | €0.00€ 0,00 | €61,180.00€ 61.180,00 |
Veeg opzij om alle kolommen te zien
=HOR.STAPELEN(A2:A6,C2:D6)
=HOR.STAPELEN(A2:A6;C2:D6)
Wat HOR.STAPELEN doet en wanneer je het gebruikt
Wat het doet: het plakt bereiken zijwaarts aan elkaar tot één blok, bijvoorbeeld een rekeninglijst met de kolommen debet en credit ernaast.
Wanneer je het gebruikt: als je een tabel bouwt uit delen die los van elkaar worden berekend, zoals een UNIEK-lijst met SOMMEN.ALS-totalen ernaast, of twee specificaties naast elkaar. Wil je bereiken onder elkaar zetten, gebruik dan VERT.STAPELEN.
De twee grootste voordelen:
- Blijft meebewegen: anders dan gekopieerde kolommen volgt het blok de bronnen als die veranderen.
- Berekende delen: de delen mogen formuleresultaten zijn, zoals UNIEK en SOMMEN.ALS, wat een kopie niet kan bevatten.
Hoe Excel de functie berekent
Excel gaat zo te werk:
- het berekent eerst elk argument tot een matrix
- het neemt de hoogte van de hoogste matrix als hoogte van het resultaat
- het zet de eerste matrix in de meest linkse kolommen, de tweede er direct rechts naast, enzovoort
- het geeft de overgebleven cellen #N/B waar een matrix korter is dan de hoogste
Het blok loopt over vanuit de formulecel, en staat er iets in dat gebied, dan is het resultaat #OVERLOPEN!.
Let op: HOR.STAPELEN koppelt rijen op positie, niet op sleutel: zijn de stukken niet uit dezelfde lijst opgebouwd, dan staan de totalen naast de verkeerde items en geeft Excel geen foutmelding.
Denkmodel
Boekenblokken naast elkaar op een plank: elk argument is een stapel boeken, van links naar rechts neergezet, en de plank is zo hoog als de hoogste stapel.
Begrippen op deze pagina: overloop, matrix, argument, bereik, cel
HOR.STAPELEN(matrix1,[matrix2], ...)
HOR.STAPELEN(matrix1;[matrix2]; ...)
| Argument | Soort | Betekenis |
|---|---|---|
matrix1 | Verplicht | Het eerste bereik of de eerste matrix; die komt in de meest linkse kolommen. |
matrix2 | Optioneel | Nog een bereik of matrix dat rechts komt; voeg er zoveel toe als je nodig hebt. |
Geeft terug:Eén matrix met alle invoer naast elkaar; zo hoog als de hoogste invoer, aangevuld met #N/B
Formules gebruiken komma's (,) tussen de argumenten, zoals in de Engelse Excel. Formules gebruiken puntkomma's (;) tussen de argumenten, zoals in de Nederlandse Excel. Formules gebruiken puntkomma's (;) tussen de argumenten, zoals in de Nederlandse Excel; de Engelse Excel gebruikt komma's (,).
Uitgewerkte voorbeelden
Beginner
Saldibalans: rekening, debet en credit naast elkaar
Je hebt de saldibalans van Veldhuis Installatie BV ontvangen, met de rekeningnaam tussen het rekeningnummer en de bedragen. Voor je werkpapier wil je alleen het rekeningnummer met daarachter de kolommen debet en credit, als één blok dat het bestand van de klant volgt.
| Rij | A | B | C | D | E | F | G | H | I |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Rekening | Naam | Debet | Credit | |||||
| 2 | 11001100 | Bank | €48,250.00€ 48.250,00 | €0.00€ 0,00 | 11001100=HOR.STAPELEN(A2:A6, C2:D6)=HOR.STAPELEN(A2:A6; C2:D6) | €48,250.00€ 48.250,00 | €0.00€ 0,00 | ||
| 3 | 13001300 | Debiteuren | €62,100.00€ 62.100,00 | €0.00€ 0,00 | 13001300 | €62,100.00€ 62.100,00 | €0.00€ 0,00 | ||
| 4 | 16001600 | Crediteuren | €0.00€ 0,00 | €41,350.00€ 41.350,00 | 16001600 | €0.00€ 0,00 | €41,350.00€ 41.350,00 | ||
| 5 | 18001800 | Btw-schuld | €0.00€ 0,00 | €7,820.00€ 7.820,00 | 18001800 | €0.00€ 0,00 | €7,820.00€ 7.820,00 | ||
| 6 | 80008000 | Omzet | €0.00€ 0,00 | €61,180.00€ 61.180,00 | 80008000 | €0.00€ 0,00 | €61,180.00€ 61.180,00 | ||
| 7 |
Veeg opzij om alle kolommen te zien
Formule in F2
=HOR.STAPELEN(A2:A6,C2:D6)
=HOR.STAPELEN(A2:A6;C2:D6)
Resultaat: 1100 | €48,250.00 | €0.00 / 1300 | €62,100.00 | €0.00 / 1600 | €0.00 | €41,350.00 / 1800 | €0.00 | €7,820.00 / 8000 | €0.00 | €61,180.001100 | € 48.250,00 | € 0,00 / 1300 | € 62.100,00 | € 0,00 / 1600 | € 0,00 | € 41.350,00 / 1800 | € 0,00 | € 7.820,00 / 8000 | € 0,00 | € 61.180,00
Stap voor stap
- Excel berekent het eerste argument,
A2:A6: één kolom met 5 rekeningnummers, 1100, 1300, 1600, 1800, 8000. - Daarna volgt het tweede argument,
C2:D6: twee kolommen van 5 rijen, debet en credit. Beide argumenten zijn 5 rijen hoog, dus er hoeft niets te worden aangevuld. - De eerste matrix komt in de eerste kolom van het resultaat (F), de tweede direct rechts daarvan (G en H). Dat zijn 1 + 2 = 3 kolommen.
Het blok loopt over van
F2totH6:- rij 2: 1100, 48,25048.250, 0
- rij 3: 1300, 62,10062.100, 0
- rij 4: 1600, 0, 41,35041.350
- rij 5: 1800, 0, 7,8207.820
- rij 6: 8000, 0, 61,18061.180
- Pas het debet van rekening 1100 aan naar 50,00050.000 en
G2toont meteen 50,00050.000. Het blok is een live weergave, geen kopie.
Let op: Staat er iets in F2:H6, dan toont de formule #OVERLOPEN! in plaats van het blok. Houd het gebied rechts en onder de formule leeg.
Meer over dit voorbeeld: waarom het werkt, 1 variant
Waarom het werkt
Elk argument wordt eerst een matrix, en HOR.STAPELEN bepaalt alleen waar de kolommen komen. Omdat de argumenten in de bron niet naast elkaar hoeven te liggen, sla je kolom B over zonder die te verwijderen of te verbergen.
Varianten
=KIES.KOLOMMEN(A2:D6,1, 3, 4)
=KIES.KOLOMMEN(A2:D6;1; 3; 4)
Hetzelfde blok met KIES.KOLOMMEN: korter als alles uit één bereik komt.
Halfgevorderd
Debiteurenadministratie en grootboek naast elkaar
Je vergelijkt de facturen in de debiteurenadministratie van Veldhuis Installatie BV met de facturen die in het grootboek zijn geboekt. De administratie telt 5 facturen, het grootboekuittreksel maar 4. Je wilt beide lijsten in één blok, en de ontbrekende grootboekregel moet Ontbreekt tonen in plaats van #N/B.
| Rij | A | B | C | D | E | F | G | H | I | J |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Factuur debiteuren | Bedrag debiteuren | Factuur grootboek | Bedrag grootboek | ||||||
| 2 | 25-1101 | €12,100.00€ 12.100,00 | 25-1101 | €12,100.00€ 12.100,00 | 25-1101=ALS.NB(HOR.STAPELEN(A2:B6, C2:D5), "Ontbreekt")=ALS.NB(HOR.STAPELEN(A2:B6; C2:D5); "Ontbreekt") | €12,100.00€ 12.100,00 | 25-1101 | €12,100.00€ 12.100,00 | ||
| 3 | 25-1102 | €4,235.00€ 4.235,00 | 25-1102 | €4,235.00€ 4.235,00 | 25-1102 | €4,235.00€ 4.235,00 | 25-1102 | €4,235.00€ 4.235,00 | ||
| 4 | 25-1103 | €9,680.00€ 9.680,00 | 25-1103 | €9,680.00€ 9.680,00 | 25-1103 | €9,680.00€ 9.680,00 | 25-1103 | €9,680.00€ 9.680,00 | ||
| 5 | 25-1104 | €2,420.00€ 2.420,00 | 25-1104 | €2,420.00€ 2.420,00 | 25-1104 | €2,420.00€ 2.420,00 | 25-1104 | €2,420.00€ 2.420,00 | ||
| 6 | 25-1105 | €6,050.00€ 6.050,00 | 25-1105 | €6,050.00€ 6.050,00 | Ontbreekt | Ontbreekt | ||||
| 7 |
Veeg opzij om alle kolommen te zien
Formule in F2
=ALS.NB(HOR.STAPELEN(A2:B6,C2:D5), "Ontbreekt")
=ALS.NB(HOR.STAPELEN(A2:B6;C2:D5); "Ontbreekt")
Resultaat: 25-1101 | €12,100.00 | 25-1101 | €12,100.00 / 25-1102 | €4,235.00 | 25-1102 | €4,235.00 / 25-1103 | €9,680.00 | 25-1103 | €9,680.00 / 25-1104 | €2,420.00 | 25-1104 | €2,420.00 / 25-1105 | €6,050.00 | Ontbreekt | Ontbreekt25-1101 | € 12.100,00 | 25-1101 | € 12.100,00 / 25-1102 | € 4.235,00 | 25-1102 | € 4.235,00 / 25-1103 | € 9.680,00 | 25-1103 | € 9.680,00 / 25-1104 | € 2.420,00 | 25-1104 | € 2.420,00 / 25-1105 | € 6.050,00 | Ontbreekt | Ontbreekt
Stap voor stap
- Het eerste argument,
A2:B6, is 5 rijen hoog en 2 kolommen breed: de facturen en bedragen uit de administratie. - Het tweede argument,
C2:D5, is maar 4 rijen hoog en 2 kolommen breed: de facturen en bedragen uit het grootboek. Het stopt bewust op rij 5, want het grootboek heeft geen vijfde regel. - HOR.STAPELEN neemt de grootste hoogte, 5, als hoogte van het resultaat. De eerste matrix vult kolom F en G. De tweede vult H en I voor 4 rijen; in de vijfde rij hebben
H6enI6niets te tonen en krijgen ze #N/B. - ALS.NB bekijkt alle 20 cellen. In 18 staat een waarde en die komen ongewijzigd door. De twee #N/B-cellen worden vervangen door
Ontbreekt, dus rij 6 luidt25-1105, 6,0506.050,Ontbreekt,Ontbreekt. - Zonder ALS.NB toont hetzelfde blok #N/B in
H6enI6, en ook een SOM over kolom I geeft dan #N/B.
Let op: Schrijf je C2:D6 voor het tweede argument, dan komen de lege cellen C6 en D6 door als 0, en toont het blok 0 en 0 in plaats van #N/B. ALS.NB heeft dan niets te vervangen en de leemte lijkt een boeking van nul.
Meer over dit voorbeeld: waarom het werkt, nog 1 valkuil, 1 variant
Waarom het werkt
HOR.STAPELEN laat nooit een rij uit de hoogste lijst vallen; het verschil wordt aangevuld met #N/B, en dat markeert precies de plaatsen waar de kortere lijst geen gegevens heeft. ALS.NB vervangt alleen #N/B, dus een echte fout elders in het blok, zoals #DEEL/0!, blijft zichtbaar.
Meer om op te letten
- De twee lijsten staan alleen op positie naast elkaar. Is het grootboekuittreksel anders gesorteerd, dan staat in rij 3 niet meer dezelfde factuur aan beide kanten, en het blok ziet er goed uit maar vergelijkt de verkeerde regels.
Varianten
=HOR.STAPELEN(A2:B6,C2:D5)
=HOR.STAPELEN(A2:B6;C2:D5)
Zonder ALS.NB: laat de #N/B staan als de leemte moet opvallen of als je hem later wilt tellen.
Gevorderd
Inkoopfacturen per leverancier: netto bedrag en btw in één tabel
Bij de btw-herberekening voor Veldhuis Installatie BV heb je 7 inkoopfacturen met leverancier, netto bedrag en btw. Je wilt één samenvattende tabel met elke leverancier één keer, het totale netto bedrag en de totale btw, gebouwd met één formule, zodat nieuwe leveranciers vanzelf in de tabel verschijnen zodra de bereiken de nieuwe facturen omvatten.
| Rij | A | B | C | D | E | F | G | H | I |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Factuurnummer | Leverancier | Netto bedrag | Btw | |||||
| 2 | 25-2101 | C2001 | €1,000.00€ 1.000,00 | €210.00€ 210,00 | C2001=HOR.STAPELEN(UNIEK(B2:B8), SOMMEN.ALS(C2:C8, B2:B8, UNIEK(B2:B8)), SOMMEN.ALS(D2:D8, B2:B8, UNIEK(B2:B8)))=HOR.STAPELEN(UNIEK(B2:B8); SOMMEN.ALS(C2:C8; B2:B8; UNIEK(B2:B8)); SOMMEN.ALS(D2:D8; B2:B8; UNIEK(B2:B8))) | €3,000.00€ 3.000,00 | €630.00€ 630,00 | ||
| 3 | 25-2102 | C2002 | €2,500.00€ 2.500,00 | €525.00€ 525,00 | C2002 | €3,700.00€ 3.700,00 | €777.00€ 777,00 | ||
| 4 | 25-2103 | C2001 | €1,500.00€ 1.500,00 | €315.00€ 315,00 | C2003 | €1,200.00€ 1.200,00 | €252.00€ 252,00 | ||
| 5 | 25-2104 | C2003 | €800.00€ 800,00 | €168.00€ 168,00 | |||||
| 6 | 25-2105 | C2002 | €1,200.00€ 1.200,00 | €252.00€ 252,00 | |||||
| 7 | 25-2106 | C2001 | €500.00€ 500,00 | €105.00€ 105,00 | |||||
| 8 | 25-2107 | C2003 | €400.00€ 400,00 | €84.00€ 84,00 | |||||
| 9 |
Veeg opzij om alle kolommen te zien
Formule in F2
=HOR.STAPELEN(UNIEK(B2:B8),SOMMEN.ALS(C2:C8, B2:B8, UNIEK(B2:B8)), SOMMEN.ALS(D2:D8, B2:B8, UNIEK(B2:B8)))
=HOR.STAPELEN(UNIEK(B2:B8);SOMMEN.ALS(C2:C8; B2:B8; UNIEK(B2:B8)); SOMMEN.ALS(D2:D8; B2:B8; UNIEK(B2:B8)))
Resultaat: C2001 | €3,000.00 | €630.00 / C2002 | €3,700.00 | €777.00 / C2003 | €1,200.00 | €252.00C2001 | € 3.000,00 | € 630,00 / C2002 | € 3.700,00 | € 777,00 / C2003 | € 1.200,00 | € 252,00
Stap voor stap
- De binnenste functie is UNIEK(B2:B8). Die leest de 7 leveranciers
C2001,C2002,C2001,C2003,C2002,C2001,C2003en houdt elke eerste voorkomen:C2001,C2002,C2003. Dat zijn 3 rijen, in volgorde van eerste voorkomen. - De eerste SOMMEN.ALS krijgt die lijst als criterium en rekent dus één keer per leverancier.
C2001: 1,0001.000 + 1,5001.500 + 500 = 3,0003.000.C2002: 2,5002.500 + 1,2001.200 = 3,7003.700.C2003: 800 + 400 = 1,2001.200. - De tweede SOMMEN.ALS doet hetzelfde op de btw-kolom.
C2001: 210 + 315 + 105 = 630.C2002: 525 + 252 = 777.C2003: 168 + 84 = 252. - HOR.STAPELEN heeft nu drie matrices van elk 3 rijen: de leveranciers (1 kolom), de netto totalen (1 kolom) en de btw-totalen (1 kolom). Omdat UNIEK alle drie dezelfde volgorde gaf, gaat rij 1 van elk over
C2001, rij 2 overC2002en rij 3 overC2003. - Het blok loopt over van
F2totH4:C2001, 3,0003.000, 630;C2002, 3,7003.700, 777;C2003, 1,2001.200, 252. Controle: netto 3,0003.000 + 3,7003.700 + 1,2001.200 = 7,9007.900 en btw 630 + 777 + 252 = 1,6591.659, dat is 21% van 7,9007.900. B2:B8is al vol, dus een achtste factuur voor een nieuwe leverancierC2004in rij 9 wordt pas meegenomen nadat je de bereiken uitbreidt tot rij 9 (of een Excel-tabel gebruikt, waarvan de kolommen vanzelf meegroeien); dan verschijnt er vanzelf een vierde rij.
Let op: Een leverancierscode die als C2001 met een spatie erachter is geëxporteerd, telt in UNIEK als aparte leverancier. Je krijgt dan een vierde rij met een deeltotaal, en de tabel van drie rijen ziet er nog steeds geloofwaardig uit. Vergelijk het eindtotaal met het brontotaal.
Meer over dit voorbeeld: waarom het werkt, nog 1 valkuil, 2 varianten
Waarom het werkt
UNIEK en SOMMEN.ALS werken op dezelfde bereiken, dus de leverancierslijst en de totalen ontstaan in dezelfde volgorde. SOMMEN.ALS accepteert een matrix als criterium en geeft dan één totaal per element, en daarom vervangt één formule een kolom gekopieerde SOMMEN.ALS-formules.
Meer om op te letten
- Vervang je één UNIEK door een gesorteerde kopie, bijvoorbeeld SORTEREN(UNIEK(B2:B8)), en laat je de andere staan, dan staan de totalen zonder foutmelding naast de verkeerde leveranciers. Sorteer liever het eindresultaat, zoals in de eerste variatie.
Varianten
=SORTEREN(HOR.STAPELEN(UNIEK(B2:B8),SOMMEN.ALS(C2:C8, B2:B8, UNIEK(B2:B8)), SOMMEN.ALS(D2:D8, B2:B8, UNIEK(B2:B8))), 2, -1)
=SORTEREN(HOR.STAPELEN(UNIEK(B2:B8);SOMMEN.ALS(C2:C8; B2:B8; UNIEK(B2:B8)); SOMMEN.ALS(D2:D8; B2:B8; UNIEK(B2:B8))); 2; -1)
Dezelfde tabel gesorteerd op netto bedrag, grootste leverancier bovenaan (C2002, C2001, C2003).
=HOR.STAPELEN(UNIEK(B2:B8),SOMMEN.ALS(C2:C8, B2:B8, UNIEK(B2:B8)))
=HOR.STAPELEN(UNIEK(B2:B8);SOMMEN.ALS(C2:C8; B2:B8; UNIEK(B2:B8)))
Alleen de netto bedragen: twee argumenten volstaan als je de btw niet nodig hebt.
Expert
Debiteuren per klant: alleen de verschillen met de administratie
Je sluit grootboekrekening 1300 Debiteuren van Veldhuis Installatie BV af op de debiteurenadministratie. Het grootboekuittreksel heeft 7 boekingen, de administratie 4 klantsaldi. Je wilt één tabel met klant, saldo administratie, totaal grootboek en verschil, waarin alleen de klanten staan waarvoor de twee niet overeenkomen.
| Rij | A | B | C | D | E | F | G | H | I | J |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Klant grootboek | Boeking grootboek | Klant administratie | Saldo administratie | ||||||
| 2 | D1001 | €5,000.00€ 5.000,00 | D1001 | €6,000.00€ 6.000,00 | D1002=LET( klant, C2:C5, subadministratie, D2:D5, grootboek, SOMMEN.ALS(B2:B8, A2:A8, klant), verschil, grootboek - subadministratie, FILTER(HOR.STAPELEN(klant, subadministratie, grootboek, verschil), verschil <> 0, "Geen verschillen") )=LET( klant; C2:C5; subadministratie; D2:D5; grootboek; SOMMEN.ALS(B2:B8; A2:A8; klant); verschil; grootboek - subadministratie; FILTER(HOR.STAPELEN(klant; subadministratie; grootboek; verschil); verschil <> 0; "Geen verschillen") ) | €2,700.00€ 2.700,00 | €2,500.00€ 2.500,00 | -€200.00€ -200,00 | ||
| 3 | D1002 | €3,200.00€ 3.200,00 | D1002 | €2,700.00€ 2.700,00 | D1004 | €3,600.00€ 3.600,00 | €4,000.00€ 4.000,00 | €400.00€ 400,00 | ||
| 4 | D1001 | €2,500.00€ 2.500,00 | D1003 | €1,800.00€ 1.800,00 | ||||||
| 5 | D1003 | €1,800.00€ 1.800,00 | D1004 | €3,600.00€ 3.600,00 | ||||||
| 6 | D1002 | -€700.00€ -700,00 | ||||||||
| 7 | D1004 | €4,000.00€ 4.000,00 | ||||||||
| 8 | D1001 | -€1,500.00€ -1.500,00 | ||||||||
| 9 |
Veeg opzij om alle kolommen te zien
Formule in F2
=LET( klant,C2:C5, subadministratie, D2:D5, grootboek, SOMMEN.ALS(B2:B8, A2:A8, klant), verschil, grootboek - subadministratie, FILTER(HOR.STAPELEN(klant, subadministratie, grootboek, verschil), verschil <> 0, "Geen verschillen") )
=LET( klant;C2:C5; subadministratie; D2:D5; grootboek; SOMMEN.ALS(B2:B8; A2:A8; klant); verschil; grootboek - subadministratie; FILTER(HOR.STAPELEN(klant; subadministratie; grootboek; verschil); verschil <> 0; "Geen verschillen") )
Resultaat: D1002 | €2,700.00 | €2,500.00 | -€200.00 / D1004 | €3,600.00 | €4,000.00 | €400.00D1002 | € 2.700,00 | € 2.500,00 | € -200,00 / D1004 | € 3.600,00 | € 4.000,00 | € 400,00
Stap voor stap
- LET legt de namen vast. klant is
C2:C5(D1001,D1002,D1003,D1004) en subadministratie isD2:D5(6,0006.000, 2,7002.700, 1,8001.800, 3,6003.600). - grootboek is SOMMEN.ALS over de 7 boekingen met elke klant als criterium.
D1001: 5,0005.000 + 2,5002.500 - 1,5001.500 = 6,0006.000.D1002: 3,2003.200 - 700 = 2,5002.500.D1003: 1,8001.800.D1004: 4,0004.000. Dus grootboek is 6,0006.000, 2,5002.500, 1,8001.800, 4,0004.000. - verschil is grootboek - subadministratie, element voor element: 6,0006.000 - 6,0006.000 = 0; 2,5002.500 - 2,7002.700 = -200; 1,8001.800 - 1,8001.800 = 0; 4,0004.000 - 3,6003.600 = 400.
- HOR.STAPELEN(klant; subadministratie; grootboek; verschil) bouwt de volledige tabel van 4 bij 4, één rij per klant, in de volgorde van de administratie.
- FILTER test verschil <> 0: ONWAAR, WAAR, ONWAAR, WAAR. Rij 2 en 4 blijven. Het resultaat loopt over van
F2totI3:D1002, 2,7002.700, 2,5002.500, -200 enD1004, 3,6003.600, 4,0004.000, 400. - Corrigeer het saldo van
D1002in de administratie naar 2,5002.500 en die rij verdwijnt. Komen alle vier overeen, dan toontF2de tekstGeen verschillenin plaats van #BEREKENEN!.
Let op: De omgekeerde fout is de tabel vanuit het grootboek aansturen: UNIEK(A2:A8) als klant, met de administratie op positie ernaast. Dan wordt een klant die in de administratie ontbreekt wel getoond, maar de kolom van de administratie sluit alleen aan als beide lijsten gelijk zijn gesorteerd, en dat controleert niets.
Meer over dit voorbeeld: waarom het werkt, nog 2 valkuilen, 1 variant
Waarom het werkt
De namen berekenen elk onderdeel één keer, en HOR.STAPELEN gebruikt dezelfde klantenlijst voor alle kolommen, dus elke rij is consistent; verschil wordt twee keer gebruikt, als kolom en als filtertest, zonder twee keer te worden berekend.
Gebruik deze opbouw niet als het grootboek klanten bevat die in de administratie ontbreken: de lijst van de administratie stuurt de tabel aan, dus die boekingen worden nooit bekeken. Laat dan UNIEK van de grootboekklanten de tabel aansturen, of gebruik een draaitabel op beide bronnen, die elke klant toont zonder formule.
Meer om op te letten
- Bij bedragen met centen markeert verschil <> 0 afrondingsruis zoals 0,0000000001 als verschil. Gebruik ABS(verschil) >= 0,005 als test.
Het bereik
C2:D5moet precies met de administratie overeenkomen. Voegt de cliënt onder rij 5 een klant toe, dan laat het vaste bereik die klant weg zonder enige waarschuwing.Maak van de administratie een Excel-tabel of breid de bereiken uit, en controleer het aantal rijen aan de hand van de specificatie.
Varianten
=FILTER(HOR.STAPELEN(C2:C5,D2:D5, SOMMEN.ALS(B2:B8, A2:A8, C2:C5)), SOMMEN.ALS(B2:B8, A2:A8, C2:C5) <> D2:D5, "Geen verschillen")
=FILTER(HOR.STAPELEN(C2:C5;D2:D5; SOMMEN.ALS(B2:B8; A2:A8; C2:C5)); SOMMEN.ALS(B2:B8; A2:A8; C2:C5) <> D2:D5; "Geen verschillen")
Zonder LET en zonder verschilkolom: korter, maar SOMMEN.ALS staat er twee keer in en de beoordelaar ziet het verschil niet.
Veelgemaakte fouten
| Symptoom | Oorzaak | Oplossing |
|---|---|---|
| Totalen staan naast de verkeerde rekeningen | Je zet een UNIEK-lijst naast een SORTEREN van de bedragen en de totalen staan naast de verkeerde rekeningen. | Bouw elk stuk uit dezelfde matrix, bijvoorbeeld SOMMEN.ALS over UNIEK(A2:A8), zodat rij 3 van elk stuk over hetzelfde item gaat. |
| #N/B in de laatste rijen van een korte lijst | De kortere lijst toont #N/B in de laatste rijen. | Dat is de aanvulling. Zet ALS.NB(...; "") of een andere tekst rond de hele HOR.STAPELEN, of maak de bereiken bewust even hoog. |
| Nullen in plaats van #N/B in het korte bereik | Je geeft twee bereiken van ongelijke hoogte en het korte bereik toont nullen in plaats van #N/B. | Je hebt het korte bereik over lege cellen uitgerekt, en een lege cel komt door als 0. Wijs elk argument aan op precies de rijen met gegevens. |
| #OVERLOPEN! terwijl de formule klopt | Het resultaat is #OVERLOPEN!, terwijl de formule klopt. | Er staat iets in de cellen die het blok rechts of eronder nodig heeft. Kies Belemmerende cellen selecteren in het foutmenu en maak ze leeg. |
Gebruikt in combinaties
- Verschillen boven de rapportagegrens met LET, FILTER, HOR.STAPELEN en ABSStem 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.Excel 2024 of nieuwer (Deze combinatie vereist Excel 2024 of nieuwer)
- Boekstukken waarbij debet niet gelijk is aan creditToon de boekstukken waarvan het debet- en creditbedrag verschillen: je pakt de unieke boekstuknummers, telt debet en credit per boekstuk op met SOMMEN.ALS en houdt met FILTER over HOR.STAPELEN de ongelijke over, alles benoemd in één LET.Excel 2024 of nieuwer (Deze combinatie vereist Excel 2024 of nieuwer)
- Mini-saldibalans uit journaalregels met HOR.STAPELEN, UNIEK en SOMMEN.ALSMaak uit ruwe journaalregels een lijst met rekeningen en hun saldo aan boekingen: UNIEK geeft de rekeningen, SOMMEN.ALS telt elke rekening op, HOR.STAPELEN zet beide naast elkaar en SORTEREN zet ze op volgorde.Excel 2024 of nieuwer (Deze combinatie vereist Excel 2024 of nieuwer)