• 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.

11 proef in een simpele formule. Hoe werkt die?

Status
Niet open voor verdere reacties.

Guus2005

Terugkerende gebruiker
Lid geworden
15 mrt 2005
Berichten
2.622
Hoi

Om de 11 proef los te laten op BSN nummers gebruik ik momenteel dit:
Code:
=GELIJK(REST((DEEL(A1;1;1)*9)+(DEEL(A1;2;1)*8)+(DEEL(A1;3;1)*7)+(DEEL(A1;4;1 )*6)+(DEEL(A1;5;1)*5)+(DEEL(A1;6;1)*4)+(DEEL(A1;7;1)*3)+(DEEL(A1;8;1)*2);11);DEEL(A1;9;1))
Op dit forum heb ik een simpele formule gevonden voor de controle van burgerservice nummers.
https://www.helpmij.nl/forum/showthread.php/905643-Controle-BSN-beginnend-met-0
Code:
=ALS(REST(SOMPRODUCT(DEEL(A1;RIJ(1:9);1)*{9;8;7;6;5;4;3;2;-1});11)=0;"OK!";"FOUT")

Hij lijkt te werken als ik bijvoorbeeld 012344321 als controle op geef.
Wat ik wil weten hoe die werkt.
Met name dit gedeelte:
Code:
SOMPRODUCT(DEEL(A1;RIJ(1:9);1)*{9;8;7;6;5;4;3;2;-1})

Alvast bedankt!
 
Druk eens op menu formules > formule evalueren, dan kun je de hele berekening stap voor stap volgen.

In het kort:
1. SOMPRODUCT kan werken met matrices, d.w.z. een bereik van meerdere cellen of getallen.
2. SOMPRODUCT werkt de getallen in zo'n matrix 1 voor 1 af.
3. Het gedeelte {9;8;...;-1} is zo'n matrix.
4. Met DEEL kun je een teken uit een reeks halen.
5. RIJ(1:9) levert een matrix met getallen 1 t/m 9.
6. De SOMPRODUCT zorg dat de reeks doorlopen wordt en vermenigvuldigd de 2 matrices: dus 1e positie x9 +2e positie x8 etc + 9x positie x-1
7. Als er geen rest is (geen cijfers achter de komma) dan klopt het BSN nummer.
 
Laatst bewerkt:
Ja, dat moest het wel zijn.
Bedankt. Het is een mooie one-liner!
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan