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

doornummeren op categorie

Status
Niet open voor verdere reacties.

madmuppet

Terugkerende gebruiker
Lid geworden
5 dec 2001
Berichten
2.273
Ik heb een excel-sheet met daarin een groot aantal codes en gegevens. De codes geven een artikel aan.
Code is weergegeven in kolom A, gegevens in kolommen B t/m E

De codes bestaan uit 8 cijfers, waarbij de eerste 3 cijfers staan voor de categorie van het artikel.
48200580 staat dus voor artikel 00580 uit categorie 482


Al die codes staan door elkaar, en dat moet ook zo blijven. Zodra er een nieuw artikel komt, krijgt deze een volgnummer, gebasseerd op de categorie, en het laatste gebruikte nummer +10

Het eest volgende nieuwe artikel in categorie 482 is dus 48200580+10 = 48200580

Probleem: het is voortdurend een zoektocht naar het eerstvolgende nummer uit categorie X. Wat ik zou willen is een tweetal cellen:
- één waarin ik de categorie kan ingeven
- één waarin op basis van de categorie het eerstvolgend beschikbare nummer wordt berekend.

Hoe pak ik dat aan? Zolang het gaat over opeenvolgende nummers is het natuurlijk niet zo moeilijk, dan krijg je zoiets:

=" eerst beschikbare nr: "&(GROOTSTE(A2:A1000;1)+10)


die categorie maakt het echter een beetje lasting. Op de een of andere manier moet ik die eerste drie cijfers in die formule zien te krijgen, anders krijg ik altijd alleen maar een volgnummer voor de hoogste genummerde categorie. :( Wie helpt me even op weg?
 
Code:
=" eerst beschikbare nr: "*10000+GROOTSTE(WAARDE(RECHTS($A$1:$A$1000;5));1)+10
in te brengen als Matrixformule (bevestigen met CTRL+SHIFT+ENTER).
 
dacht al zoiets ja, maar ik krijg het niet werkend.... :(
zie bijgevoegd bestand als voorbeeld.
 

Bijlagen

De oplossing van GiMe zoekt de hoogste waarde in de kolom, dus niet de laatste cijfer in een bepaalde categorie. Dat hij niet werkt komt door de lege cellen in het bereik. Ik heb het bereik via een naam bepaald en dan werkt hij, met dien verstande dat als het eerste cijfer een nul is, dit wordt weggelaten. Dat vang je af met TEKST. In het voorbeeld zie je dit.
 

Bijlagen

Aan de hand van je voorbeeld : (ook matrixformule)
Code:
=MAX(ALS(A2:A997="";0;ALS(WAARDE(LINKS(A2:A997;3))=I6;A2:A997)))+10
 
Laatst bewerkt:
@ rgg13134: bijna goed.... ik krijg nu alleen voor ALLE categorieen als eerstbeschikbare nummer het XXX22320. Dat gaat dus ergens nog niet helemaal goed


@ GiMe: dat lijkt beter te werken, ik ga het eens wat uitgebreider testen. Bedankt!
 
Laatst bewerkt:
ik krijg nu alleen voor ALLE categorieen als eerstbeschikbare nummer het XXX22320
Klopt, die beperking had ik met mijn eerste zin bedoeld.
De oplossing van GiMe zoekt de hoogste waarde in de kolom, dus niet de laatste cijfer in een bepaalde categorie.
De nieuwe oplossing heb ik kort getest en die lijkt me wederom briljant.
 
sorry voor de late reactie, ben een paar dagen ziek geweest.
Ik heb de formule getest, en het blijkt werkelijk het ei van columbus. Dit scheelt veel zoekwerk, bedankt! :thumb:

ik moet me toch maar eens gaan verdiepen in die matrix-formules....
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan