BlogRead the Latest News

 

Verticaal zoeken in Excel

Verticaal zoeken gebruik je als je in een tabel een waarde wilt opzoeken. Denk bijvoorbeeld aan het aantal artikelen op voorraad aan de hand van een artikelcode. Of de prijs van het artikel. En omdat een voorbeeld nog altijd meer zegt dan 10.000 woorden, geef ik je hieronder… een paar voorbeelden!

Verticaal zoeken naar de voorraad

Ik heb onderstaande tabel. Aan de hand van het artikelnummer wil ik de voorraad opzoeken. Het artikelnummer staat in kolom A, de voorraad in kolom D. Dit is de vierde kolom uit de tabel, belangrijk!!   De formule in cel H3 luidt dan: NL: “=Vert.Zoeken(H2, A2:E31, 4)” EN: “=Vlookup(H2, A2:E31, 4,)” Ik neem jullie mee door de formule. De formule bestaat uit 4 parameters: 1. H2: hier staat het artikelnummer (als verwijzing in een cel) 2. A2:E31: de tabel waarin gezocht moet worden 3. 4: geef de vierde kolom van de tabel terug

Verticaal zoeken naar korting

Aan het model heb ik een extra tabel toegevoegd met kortingen in kolom G en H. Deze lees je als tussen 0 en 4 bestellingen krijg je geen korting. Tussen 5 en 9 bestellingen 2%, et cetera. Om in cel K5 het kortingspercentage op te halen gebruik je ook verticaal zoeken: “=Vert.Zoeken(K4, G2:H7, 2)” Op zich is het merkwaardig dat er in de tweede situatie gezocht wordt naar een waarde die niet in de tabel staat. In het geval van de kortingen heel mooi, in het geval van het artikelnummer gevaarlijk! Want als ik artikelnummer 170000 invul, dan geeft hij als voorraad 85 stuks. Het aantal dat hoort bij artikelnummer 1600015. Dat komt omdat verticaal zoeken de tabel als reeks beschouwt en dus de waarde teruggeeft die past in de reeks. Dit wil je niet! en daarom heeft verticaal zoeken nog een vierde parameter, ‘range-lookup’. Als deze ontbreekt, dan gebruikt Excel als standaardwaarde WAAR of TRUE. Ofwel, je krijgt een waarde retour ook als de exacte zoekwaarde niet bestaat. Als je wilt dat dit niet gebeurt, dan moet je de formule worden NL: “=Vert.Zoeken(H2, A2:E31, 4, ONWAAR)”. Kijk, dan levert de formule een #N/A of #N/B op.

Andere zoekmanier, via Match en Index

Ik werk al jaren met Excel, maar ik gebruik de laatste jaren eigenlijk pas een andere zoekfunctie, match (vergelijken in het Nederlands). De matchfunctie geeft geen waarde uit een opgegeven kolom (zoals vlookup), maar retourneert het rijnummer waar de zoekwaarde staat. Zie onderstaand plaatje. De matchformule kent 3 parameters: 1. De zoekwaarde 2. De zoeklijst 3. Vergelijktype = 0, dit betekent een exacte match. Als je dit weet, dan kan je met de indexformule de waarde ophalen. Met de indexfunctie kan je uit een tabel de waarde laten teruggeven die staat in een rij en een kolom. Dus: De parameters: 1. Tabel 2. Rijnummer 3. Kolomnummer In de praktijk kom ik modellen tegen waar de vlookup op dezelfde regel vaker wordt gebruikt, bijvoorbeeld voor iedere kolom die nodig is. Vlookup is een trage functie. Door in combinatie met de match te werken gaat dit sneller. Met de match haal je het rijnummer op en vervolgens met de indexfunctie de verschillende kolommen. Dit scheelt echt rekentijd.

Zoeken via match op een combinatie van velden (Array-functie)

In het vorige voorbeeld hadden de artikelen met een verschillende kleur een verschillend artikelnummer. Deze ondernemer heeft de artikelen hetzelfde nummer gegeven. Dus als je de voorraad wilt weten, dan moet je ook de kleur gebruiken om te zoeken. Dit lukt met de match-functie, zie het voorbeeld hieronder: De eerste parameter bestaat uit een combinatie van zoekvelden, namelijk de waarde in H2 en H3. Deze combineer je tot 1 parameter door ze met & aan elkaar te plakken. De zoektabel bestaat dus ook uit twee onderdelen, ook deze plak je met & aan elkaar. Alleen… In H4 staat #value!, niet goed. Dit komt, omdat dit nu een Array-functie is geworden. Ik had na het intypen van de formule niet op enter moeten drukkken, maar op ALT-CTRL+ENTER. De formule wordt dan voorzien van accolades en, zie: het werkt nu.

Resume:

Van prototype naar snelle Ferrari

Remmenspecialist ABS beschikt over enorme databases met bijna 30.000 artikelen. Daar worden diverse berekeningen op losgelaten. OfficeSpecialisten hielp hen met een aantal oplossingen waarmee ze veel sneller over de gewenste informatie kunnen beschikken. ‘Dankzij OfficeSpecialisten wordt onze data omgezet in informatie waar we echt wat mee kunnen.’ ABS is sinds 1978 leverancier van remonderdelen, wiellagers en stuur- en wielophangingsdelen voor auto’s. ‘Dat doen we voor alle automerken en –modellen,’ vertelt marketing manager Mats Hofstra. ‘We richten ons daarbij op het niet-merkgebonden kanaal in Europa.’ ABS levert die onderdelen onder het eigen ABS-merk aan de professionele groothandel. En het is een forse markt, zegt Mats Hofstra. Om een indruk te geven: ‘In heel Europa rijden ruim 300 miljoen auto’s rond en jaarlijks geven autobezitters zo’n 300 tot 500 euro uit aan auto-onderdelen.’

Enorm assortiment

ABS onderscheidt zich vooral door het grote aantal artikelen dat het bedrijf direct uit voorraad kan leveren – het assortiment bestaat uit meer dan 29.000 verschillende artikelen – en de zeer korte levertijd. Daarbij maakt ABS gebruik van enorme databases, waarin al die verschillende onderdelen zijn opgenomen; letterlijk tot op het kleinste schroefje.

De juiste artikelen in de juiste hoeveelheden

‘Maar wat minstens zo belangrijk is,’ vervolgt Mats, ‘is de markt. Onze onderdelen worden natuurlijk niet gekocht om ernaar te kijken, maar om ze te verkopen of onder een auto te monteren. En als je je auto ’s morgens naar de garage brengt, wil je ‘m het liefst ’s avonds weer kunnen ophalen. Dat betekent dat de voorraad heel dicht bij de eindgebruiker moet liggen. Als je dat door heel Europa moet doen, dan moet je er dus voor zorgen dat de juiste artikelen in de juiste landen in de juiste hoeveelheden op voorraad zijn.’

Model ontwikkeld

Daarbij kijkt ABS onder meer naar de gemiddelde leeftijd van het wagenpark, hoeveel auto’s er zijn en hoeveel kilometers die auto’s rijden. Maar ook naar vragen als: Wat voor wegdek is er? Wat voor snelwegen zijn er? Hoe is het klimaat, en waarmee wordt gestrooid in de winter? Mats Hofstra: ‘Op basis van al die variabelen hebben wij een model ontwikkeld, waarmee we exact weten in welk land je welke onderdelen en in welke aantallen op voorraad moet hebben om de markt te kunnen afdekken. Op die manier helpen wij importeurs bij het inkopen van hun spullen met een zo hoog mogelijke omloopsnelheid. Zodat de onderdelen uiteindelijk tegen zo laag mogelijke kosten bij de eindgebruiker terecht kunnen komen.’

Prototype in Excel en Access

Op basis van al die data worden diverse berekeningen gemaakt – en daarbij komt OfficeSpecialisten om de hoek kijken, vertelt Mats. ‘Zij helpen ons bij het integreren van de verschillende systemen.’ Hoe gaat dat in z’n werk? Mats antwoordt: ‘Als wij iets willen berekenen, maken we meestal eerst zelf een prototype in Excel en Access. Daarmee kunnen we precies laten zien wat de bedoeling is. Over het algemeen komt er dan prima het juiste cijfer uit, maar vaak wel via een omweg en veel te traag. Om een voorbeeld te noemen: We hadden eens een berekening gemaakt die wel 50 uur in beslag nam. Toen we vervolgens OfficeSpecialisten vroegen ermee aan de slag te gaan, duurde het hele proces nog maar een paar minuten. Zo hadden ze ons prototype zomaar omgesleuteld naar een snelle Ferrari!’

Van data naar bruikbare informatie

Hij vervolgt: ‘In onze branche is een standaard waarmee alle verschillende Europese autotypes in kaart zijn gebracht. In totaal rijden er volgens die standaard 25.000 verschillende autotypes rond in Europa. Als je data aan het systeem levert, kun je ook data van het systeem terugkopen van je concurrenten, waardoor je op een gestructureerde manier over concurrentgegevens kunt beschikken. Maar het vergelijken van die data bleek nog best lastig. Soms worden er bijvoorbeeld millimeters en centimeters door elkaar heen gebruikt. OfficeSpecialisten heeft ons geholpen om die gegevens goed naast elkaar te zetten. Zo hebben we data van zo’n 400 concurrenten binnen geladen waar we vergelijkingen op kunnen maken. En dan heb je het algauw over zo’n 350 miljoen records. In plaats van data beschikken we hierdoor over zeer bruikbare informatie.’

Gewoon de schouders eronder

Mats is uitermate te spreken over de samenwerking met OfficeSpecialisten. ‘Vooral ook omdat ze heel praktisch ingesteld en recht door zee zijn. Niet moeilijk doen, maar gewoon de schouders eronder zetten. Die mentaliteit spreekt me aan. Ik zou OfficeSpecialisten dan ook zeker aanraden,’ besluit hij. ‘Ze gaan niet eerst oeverloos een plan schrijven, wat vervolgens ergens onderin een la belandt, maar gewoon meteen aan de slag met datgene wat jij als klant nodig hebt. Daardoor ben je verzekerd van een snel resultaat.’

Zo werkt ‘Precisie zoals afgebeeld’ of ‘Precision as displayed’!

officespecialisten-zo-werkt-precisie-zoals-afgebeeld-of-precision-as-displayed   1 + 1 = 3. Iedereen ziet direct dat dit niet klopt. Maar Excel denkt er toch echt anders over, zo illustreert onderstaand voorbeeld.   Zeker in financiële rapportages zullen hier vragen over gesteld worden. Zijn er opeens fondsen bij gekomen of misschien wel verdwenen?

Hoe ontstaat dit?

Deze schijnbare fout wordt veroorzaakt omdat de gegevens in de cellen zijn ‘afgekapt’, door het aantal decimalen te verminderen. Iets wat vaker gedaan wordt, om bijvoorbeeld in duizenden of miljoenen te rapporteren. Dat ‘afkappen’ gebeurt niet vanzelf, dat kun je in Excel ingeven op de onderstaande manier: Maar als je het aantal decimalen vermindert, moet je er wel rekening mee houden dat de getoonde waarde in dat geval anders is dan de ingevoerde waarde. Laat je namelijk de werkelijk ingevoerde waarden zien, dan is gelijk duidelijk wat er gebeurt: Omdat de weergave in het eerste voorbeeld is aangepast zodat de gegevens met minder decimalen getoond worden, lijkt het of er 1 + 1 staat. In werkelijkheid staat er echter 2 x de waarde 1.45 ingevoerd. Dat geldt ook voor de berekende waarde. De uitkomst is namelijk 2.90, maar wanneer we dat tonen als geheel getal, wordt de waarde 3 weergegeven. Heel erg lastig, want om nu telkens uit te leggen dat het geen fout is, maar een afrondingsverschil, is natuurlijk niet echt gewenst.

Hoe los je dit op?

Daarom heeft Excel de optie ‘Precisie zoals afgebeeld’ of ‘Precision as displayed’ in het leven geroepen. Door deze aan te vinken (Menu Bestand – Opties – Geavanceerd – Berekenen) rekent Excel met de getallen zoals ze getoond worden en niet zoals ze zijn ingevoerd. Deze instelling geldt voor het hele geopende bestand en alleen het geopende bestand.

Waarschuwing

Pas hier wel mee op! De gegevens worden namelijk daadwerkelijk aangepast en verliezen daarmee hun nauwkeurigheid. Bekijk dus per situatie of dit wenselijk is. Stel dat je de onderstaande ingevoerde waarden hebt: Als je de weergave beperkt tot 1 decimaal, dan worden de waarden aangepast naar 1.5, zoals uit de volgende afbeelding blijkt: En ga je nog een stap verder, door de weergave naar 0 decimalen te verminderen, dan wordt de waarde van 1.5 zelfs weergegeven als 2. Maar… Wanneer je later naar de origineel ingevoerde waarden terug wilt, is dat helaas niet meer mogelijk. De 2 blijft een 2. In dat geval is het beter om de desbetreffende cel(len) te selecteren en gebruik te maken van de functie ‘Afronden’ of ‘Round’. Of: Hiermee blijven de oorspronkelijke waarden behouden en is 1+1 weer gewoon 2!

Meer weten?

Wil je meer weten over deze of andere handige oplossingen in Excel die het leven een stukje makkelijker maken? Neem dan gerust contact met ons op!

Slicers in Excel, lang niet zo ingewikkeld als je misschien denkt

Officespecialisten-Slicers_in_Excel_lang_niet_zo_ingewikkeld_als_je_misschien_denkt_2 In een vorig blog heb ik verteld hoe je een csv- of ander tekstbestand in Excel kunt splitsen en hoe je met pivots (draaitabellen) kunt werken. Ook voor het filteren van een tabel heeft Excel een handige optie. Hoogstwaarschijnlijk ken je de optie Autofilter wel, maar die is lang niet altijd wenselijk omdat je daarvoor in de brontabel aan de slag moet. En de kans op ongewenste aanpassingen of fouten is daarbij niet denkbeeldig. Daar liep ook de financiële medewerker tegenaan die mij benaderde. Hij had een overzicht gemaakt en wilde gebruikers de mogelijkheid bieden de cijfers van een bepaalde klant en/of een bepaald product te selecteren. Maar de optie Autofilter wilde hij bij voorkeur niet gebruiken. Ik liet hem de optie van Slicers zien. Dat was precies waar hij naar op zoek was en wat ik dan ook graag in dit blog met jullie wil delen.

Stap 1: Markeer de platte tabel als ‘echte tabel’

Als voorbeeld gebruik ik een tabel met informatie uit het urensysteem (zie onderstaande afbeelding). Omdat de gegevens uit een andere bron afkomstig zijn, moet je deze platte tabel eerst markeren als een ‘echte tabel’. Dat doe je via de optie ‘Insert – Table’. Daardoor krijg je een nieuwe tab in het lint van Excel (het lint, in het Engels ‘ribbon’, is de menubalk): ‘Table’ met een hoop handige hulpmiddelen. Ik denk dat ik hier nog wel wat blogs aan zal wagen. Zoals jullie weten ben ik dol op tabelstructuren in Excel.  

Stap 2: Insert Slicer

Als optie in de nieuwe tab ‘Table’ staat ‘Insert Slicer’ (zie onderstaande afbeelding). Met een slicer kan je filteren op een kolom. Selecteer deze optie. Vervolgens geef ik in mijn voorbeeld aan dat ik voor klant, project en werksoort een slicer wil hebben, door deze aan te vinken onder het kopje ‘Insert Slicers’ (zie onderstaande afbeelding).

Stap 3: Selecteer de gewenste opties voor iedere slicer

Op iedere slicer kan je klikken op een keuzemogelijkheid. Ik kies voor klant A en de andere twee slicers laten direct zien welke werksoorten en projecten bij deze klant van toepassing zijn (zie onderstaande afbeelding). Dit voorkomt dat je combinaties kunt maken die niets opleveren. En kijk, direct worden alleen de regels getoond die voor deze klant relevant zijn. Je kunt ook meer opties tegelijkertijd filteren, bijvoorbeeld zowel klant A als klant B. Dit doe je door met je muis over A en B heen te gaan en deze dan te selecteren, of door gebruik te maken van de CTRL-toets in combinatie met de muis. Wil je het filter opheffen en alles weer zichtbaar maken? Dat kan via het knopje met het filter en het rode kruisje.

Stap 4: Zet de slicers op de gewenste plek

Nu staan de slicers nog wel naast de gegevenstabel en dat was niet de wens van de klant. De oplossing is eenvoudig: knippen en plakken. Je kunt de slicers knippen en vervolgens overal in het Excel-werkboek plakken. Ja, zelfs vaker zodat je op meerdere werkbladen direct slicers kunt gebruiken. Deze blijven in verbinding staan met elkaar, dus wat je in het ene werkblad wijzigt, wordt direct ook in alle andere werkbladen aangepast.

Slicers in combinatie met draaitabellen

Slicers zijn ook heel handig om te gebruiken in combinatie met draaitabellen / pivottables. Ook die slicers kan je knippen en overal waar je maar wilt plakken. Met grote regelmaat kom ik modellen tegen waarbij overzichten zijn gebaseerd op een draaitabel. Met slicers heb je het voordeel dat je dus niet hoeft te filteren op het blad van de pivot, maar precies daar waar je wilt in je model.

Leuke dingen, die slicers…

Ik heb zelf ook het voordeel van slicers moeten ervaren, maar ik nu ben ik helemaal om! En mensen die ik heb uitgelegd hoe het werkt, zijn net als ik razend enthousiast. Het is het zeker waard om er op een verloren momentje eens mee aan het experimenteren te slaan.

Zelf aan de slag!

Wil je meer weten over slicers of een demo-bestandje ontvangen, waarmee je zelf kunt ervaren hoe handig slicers zijn? Stuur dan een mailtje naar info@officespecialisten.nl.

Join Our Newsletter

Get Updates, Upcoming Themes Info, and Our Great Deals!