Black Friday = Pricewatch Bekijk onze selectie van de beste Black Friday-deals en voorkom een miskoop.

Excel: meerdere waardes opzoeken

Pagina: 1
Acties:

  • afterburn
  • Registratie: Januari 2000
  • Laatst online: 13-11 16:52

afterburn

No more...

Topicstarter
Ik ben een Excel workbook aan het bouwen met meerdere sheets/tabs. Op sheet 1 heb ik een lijst met items. Op sheet 2 heb ik nog een lijst met items. Ik wil de items uit een kolom op sheet 1 opzoeken in een kolom in sheet 2 om daarmee de waarde uit een andere kolom in sheet 2 weer te kunnen geven op sheet 1.

Met een enkele waarde is dit niet zo moeilijk en vrij simpeltjes met een vlookup voor elkaar te krijgen. Dat doe ik voor andere zaken in dit workbook al veel. Echter, de waardes van de kolom uit sheet 1 die ik opzoek in sheet 2 kunnen meerdere keren voorkomen in sheet 2, en ik heb alle waardes nodig. Dit is een beetje ingewikkelder. Met behulp van wat tutorials ben ik uitgekomen op het volgende:

=INDEX(Relations!$E$2:$E$108, SMALL(IF($A2=Relations!$C$2:$C$108, ROW(Relations!$C$2:$C$108)-ROW(Relations!$C$2)+1), COLUMN(A1)))

Waarbij:
Relations!$E$2:$E$108 = de kolom in sheet 2 waarvan ik de waardes wil weten
$A2 = de waarde is op sheet 1 die ik opzoek. Deze telt uiteraard door naar $A3, $A4, etc op elke verdere regel
Relations!$C$2:$C$108 = de kolom op sheet 2 waarbinnen ik de waarde $A2 wil matchen

De formule geeft geen error, dus dat is op zich goed. Echter, met COLUMN(A1), COLUMN(A2), etc zou de formule de andere hits uit de zoek opdracht moeten neerzetten en dit gebeurt niet. Ik krijg maar 1 waarde terug, ipv een lijst met waardes. Daarnaast valt me op dat als de waarde in kolom A op sheet 1 meerdere keren voorkomt (kan ook), dat ik dan andere zoekresultaten krijg. Weliswaar resultaten die kloppen, maar die allemaal op achter elkaar op dezelfde regel zouden moeten staan.

Al met al, kom ik er niet meer uit. Dit is te ingewikkeld voor mijn Excel kunsten. :) Iemand hier suggesties?

Fuji X-T1 | XF14mm F2.8 R | XF23mm F1.4 R | XF35mm F1.4 R
Nikon D800 | AF-S 24-120/f4 VR2 | AF-S 50/f1.8G
Computer specs


  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Twee dingen die me in de gauwigheid opvallen:
- het is een matrixformule. Voer je hem ook als matrixformule in?
- column(a1), column(A2),...column(An) zullen allemaal hetzelfde resultaat geven, namelijk 1,1,....1. anders gezegd: je vraagt steeds het eerste resultaat op.

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


  • Logico
  • Registratie: September 2013
  • Laatst online: 00:05
Ah, leuke formule is dat ja :) Dit zou moeten werken, mits je "Relations!$E$2:$E$108" wijzigt naar de hele zoektabel.

{=INDEX(Relations!$E$2:$E$108, SMALL(IF($A2=Relations!$C$2:$C$108, ROW(Relations!$C$2:$C$108)), ROW(1:1)),20)}

En dus in plaats van de accolades te typen de formule afsluiten met Ctrl Shift Enter, de accolades verschijnen dan vanzelf (matrix formule).

  • afterburn
  • Registratie: Januari 2000
  • Laatst online: 13-11 16:52

afterburn

No more...

Topicstarter
@Lustucru : Even gechecked, en ze gaan van COLUMN(A1) naar COLUMN(B1), COLUMN(C1), etc. Toen even gegoogled op die invoer vraag en de boel gecorrigeerd met CTRL-SHFT-ENT om in te voeren, en het werkt! Hoorah!

@Logico : het lijkt inmiddels te werken met de tip cq vragen van @Lustucru , maar zou je kunnen uitleggen wat je precies bedoelt? Wat doet dat laatste stuk anders dan mijn formule?

Fuji X-T1 | XF14mm F2.8 R | XF23mm F1.4 R | XF35mm F1.4 R
Nikon D800 | AF-S 24-120/f4 VR2 | AF-S 50/f1.8G
Computer specs