Archief - Hulp in excel gezocht voor een finishing touch

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Aliou2845

Legacy Member
Hallo allemaal,

Allereerst mijn excuses als dit op een ander subforum hoort, deze leek mij de beste omdat het iets voor mijn werk betreft, dan mag dit uiteraard verhuizen :)

Ik ben voor mijn werk iets in elkaar aan het steken en ik zou er graag nog één ding aan toevoegen maar ik weet niet goed hoe ik hieraan kan beginnen, en of het mogelijk is in excel.
Kort uitgelegd: wij maken gebruik van bonnenboeken die worden verdeeld onder iedereen op het werk, en waarop steeds wordt geschreven wat men gaat afhalen bij een bepaald bedrijf.
Zo een bonnenboek bestaat uit 50 bonnen (bijvoorbeeld bon 000001 tot 000050 of 002851 tot 002900)
Ik moet regelmatig uitzoeken wie een bepaald product is gaan afhalen waarbij ik enkel deze nummer heb.
Momenteel stuurt de persoon die deze bonnen verdeeld steeds een email waarin staat: deze persoon heeft bon 002851 tot 002900.
Nu heb ik dus een lijst gemaakt waarin kan ingevuld worden per bonnenboek wie de afhaler was.
Ik heb er een cel in verwerkt die werkt met verticaal zoeken, waarbij je dus een specifieke bonnummer ingeeft en hij automatisch in de cel daarnaast ingeeft wie die bonnenboek in zijn bezit heeft.
Dit is voornamelijk gemakkelijk voor mij, en wint me telkens een paar seconden.
Nu wil ik heel graag ook iets voorzien waardoor de persoon (die btw uiterst wantrouwig staat tegenover nieuwe procedures, en waaraan ik ook niet moet vragen om te gaan werken met zoekfuncties) eigenlijk ook een veld heeft waarin hij bijvoorbeeld de eerste nummer intikt, en de cel ernaast de naam van de persoon. Als hij dan op enter drukt dat dit automatisch ingevuld wordt in de correcte plaats in de excel.
Ik hoop althans dat zo een functie bestaat, anders gaan we zo moeten blijven werken waarbij hij een email verstuurd en ik het invul op de juiste plek, tot zijn pensioen :D
Alvast bedankt voor de tips!

Straddle

Legacy Member
Klinkt heel eenvoudig hoor, gewoon een VLOOKUP plaatsen langs de bon-nummer die de naam dan aanvult.

Aliou2845

Legacy Member
Bedankt voor je antwoord, ik was misschien niet helemaal duidelijk in al mijn uitleg.
Wat je zegt heb ik al, nu zoek ik het omgekeerde te doen.
Met name dat je dus gewoon in een cel bovenaan de excel-file de bonnummer ingeeft én de naam en dat hij het automatisch invult in de lijst. Dus zonder te gaan scrollen of zoekfuncties te gaan gebruiken.
Ik wil het systeem zo dummy proof mogelijk maken, vandaar dat ik eens wil kijken wat de mogelijkheden zijn.

Affinity

Legacy Member
Een VLOOKUP is nochtans wat je nodig hebt, en het klinkt alsof je dat nog niet hebt....


In het veld waarin je data moet zien zet je iets als dit:


=VLOOKUP((A1);A2:Z99;1;1)

A1 is uw bon nummer
A2:Z99 is uw database bereik waarin die bonnummer en andere info vermeld staat (mag ook in een andere sheet/workbook staan, gewoon klikken en hij vult automatisch je formule aan).
1 is voor de kolom van uw bereik dat je in het lijntje hierboven meegegeven hebt
de laatste 1 is voor exacte waarde (ofzoiets)


Als je dan helemaal fancy wil gaan, gebruik je nog IF(ISBLANK(A1);"";VLOOKUP(A1);A2:Z99;1;1) of iets in die aard om geen #N/A weer te geven als uw cel A1 leeg is, maar alles mooi leeg te laten :)

parabellum

Legacy Member
Hij wil eigenlijk een invulveld op basis waarvan hij zijn database automatisch laat aanvullen. Kan dus niet met een VLOOKUP of een andere functie maar enkel met een macro.
Een andere simpele oplossing is dat je een blad hebt waar je niet alle bonnummers hebt staan, maar enkel het eerste in de reeks van 50. Voor 10000 bonnen heb je dan 200 rijen, en waarschijnlijk worden die toch (quasi) sequentieel uitgegeven waardoor je werknemer bijna niet moet scrollen. Dan kan je een sheet maken met 10000 rijen waarmee je met simpele referenties de data uit de 200 rijen haalt, en dan kan je op die 10000 je vlookup zetten.
Iemand die goed met visual basic overweg kan kan u echter op 5 minuten die macro schrijven.

Affinity, makkelijker dan een ISBLANK om zoiets op te. vangen is IFERROR, vind ik.

sandervdw

Legacy Member
parabellum zei:
Hij wil eigenlijk een invulveld op basis waarvan hij zijn database automatisch laat aanvullen. Kan dus niet met een VLOOKUP of een andere functie maar enkel met een macro.
Een andere simpele oplossing is dat je een blad hebt waar je niet alle bonnummers hebt staan, maar enkel het eerste in de reeks van 50. Voor 10000 bonnen heb je dan 200 rijen, en waarschijnlijk worden die toch (quasi) sequentieel uitgegeven waardoor je werknemer bijna niet moet scrollen. Dan kan je een sheet maken met 10000 rijen waarmee je met simpele referenties de data uit de 200 rijen haalt, en dan kan je op die 10000 je vlookup zetten.
Iemand die goed met visual basic overweg kan kan u echter op 5 minuten die macro schrijven.

Affinity, makkelijker dan een ISBLANK om zoiets op te. vangen is IFERROR, vind ik.

Je moet ook niet echt met een makro werken.
Als de persoon gewoon de persoon en de eerste bon ingeeft, kan je een kolom berekenen als =quotient(bonnummer;50).
In uw vlookup doe je hetzelfde, en dan krijg je ook die naam terug.

parabellum

Legacy Member
Quotient is inderdaad een makkelijke oplossing, als je zeker bent dat de bonnen altijd per 50 blijven.

Maar een macro heb je toch nog altijd nodig om de gegevens weg te schrijven. De werknemer wil niet zelf een tabel invullen maar met een invulcel werken. Elke keer hij een nieuw bonnummer zou ingeven zou dan de informatie over de vorige bonnummers verdwenen zijn.

Aliou2845

Legacy Member
De VLOOKUP had ik inderdaad al, namelijk =ALS.FOUT(VERT.ZOEKEN(C2;B6:E2005;4);0)
Het middelste gedeelte had ik, ik heb er nu de ALS.FOUT bijgezet, werkt prima zo! :thumb:

Bedankt alvast voor de tip, ik ben niet thuis in macro's maar ga er mij vanavond eens in verdiepen.
Dus met een macro zou ik bijvoorbeeld een veld kunnen voorzien waarbij de persoon de eerste bon van de afgehaalde bonnenboek ingeeft, een sneltoets drukt, waarna excel automatisch scrolt naar de betreffende lijn waar hij de naam kan invullen. Zie ik dat correct? Of is er nog een simpelere manier?

OfFPiR

Legacy Member
Kun je gewoon de nummer en naam vanboven invullen en dan gewoon de kolom sorteren op nummer?

Muscleduck

Legacy Member
Dit heb je nodig:

[video=youtube;v2ntjP692VQ]https://www.youtube.com/watch?v=v2ntjP692VQ&feature=emb_title[/video]

En gebruik INDeX MATCH in plaats van VLIIKUP. Deze is over het algemeen performanter en flexibeler. Je data moet ook niet alfabetisch sctaan.

Aliou2845

Legacy Member
Muscleduck zei:
Dit heb je nodig:

[video=youtube;v2ntjP692VQ]https://www.youtube.com/watch?v=v2ntjP692VQ&feature=emb_title[/video]

Ok, ik ben nu voor deze aanpak gegaan, dit lijkt me een vrij simpel uit te leggen proces.
Ik moet gewoon de knop 'formulier' even aan zijn snelle toegang toevoegen en hij is vertrokken.

De match en index lijkt me niet de juiste manier voor de lookup, aangezien ik als uitkomst een andere cel moet hebben.
Echter, omdat ik toch enkel zelf de lookups moet doen kan ik ze gewoon steeds even sorteren alvorens ik een bon opzoek.

Nu heb ik enkel één bijkomend probleem.
Toen ik mijn eerste versie had gemaakt van de excelfile heb ik gewoon alle bonnen in sequentie al gezet, en moest er gewoon de naam bij gezet worden.
Indien ik een bon ingeef waarbij geen naam staat, geeft hij dan een foutmelding.
Nu met de nieuwe methode ontbreken die bonnen gewoon in mijn lijst en zoekt hij verder naar onderen tot hij een bon vind, en geeft daar dan de bijhorende naam van op.
Ik zou dus nu een soort veiligheid moeten voorzien, die aangeeft dat het niet de betreffende bon is.
Is dit iets wat bestaat?
Een bonnenboek telt 50 bonnen, dus met andere woorden zou hij logischerwijs een foutmelding moeten geven als het uiteindelijk gekozen cijfer lager is dan mijn ingegeven cijfer - 50

Muscleduck

Legacy Member
Wil je je Excel eens delen? Desnoods in PM. Ik wil wel eens zien. Index.match kan alles wat vlookup kan, en als voordeel heb je dat je bij de match op het einde een 0 kan zetten voor enkel exacte match.

deathsythe

Legacy Member
zoiets lijkt toch uiterst gepast om in acces te maken ipv excell ?

Plutus

Legacy Member
Muscleduck zei:
Wil je je Excel eens delen? Desnoods in PM. Ik wil wel eens zien. Index.match kan alles wat vlookup kan, en als voordeel heb je dat je bij de match op het einde een 0 kan zetten voor enkel exacte match.

En meer! Echte mannen gebruiken INDEX MATCH (MATCH)
emoji41.png


Zoals gezegd, het bestand even delen (best met fictieve gegevens) kan helpen om snel een oplossing te bieden.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan