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

Hoe resultaat zoeken in een tabel op basis van meerdere argumenten?

Status
Niet open voor verdere reacties.

Wocky

Gebruiker
Lid geworden
22 feb 2014
Berichten
192
Beste,

Kan iemand mij verder helpen met het opstellen van een formule.
Ik zou graag een resultaat opzoeken in een tabel, op basis van meerdere "zoekargumenten" (weet niet hoe de "zoekparameters" te omschrijven).

Ik heb een tabel met 4 kolommen.
MODEL / AFWERKING / AFMETING / PRIJS

Ik heb een andere tabel met dezelfde kolommen
Waar ik in de kolom PRIJS de prijs wil weergeven op basis van de eerste 3 kolommen (argumenten) die ik manueel heb ingevuld.

In bijlage een voorbeeld.

Ik denk dat ik een soort van geneste zoekfunctie moet toepassen, maar ik geraak er niet uit (al 5uur m'n hoofd aan het breken).
Het probleem is, als ik de zoekfunctie nest.. dat deze geen Bereik-Adres als resultaat geeft (denk ik).
Kan iemand mij verder helpen?

Alvast bedankt.
Wocky
Bekijk bijlage TEST_2.xlsx
 
Met een matrixformule kom je een heel eind:

Code:
{=INDEX(Tabel1;VERGELIJKEN([@Kolom1]&"_"&[@Kolom2]&"_"&[@Kolom3];Tabel1[Kolom1]&"_"&Tabel1[Kolom2]&"_"&Tabel1[Kolom3];0);4)}


Curly brackets niet zelf intikken, maar formule afsluiten met CTRL-Shift-Enter.

Zie bijlage:

Bekijk bijlage Excelbat.xlsx

Greetz/Excelbat
 
Laatst bewerkt:
Ik neem aan dat in je eigen bestand in de kolom prijs een getal staat. Dan kan deze ook:
Code:
=SOMPRODUCT((Tabel1[Kolom1]=[@Kolom1])*(Tabel1[Kolom2]=[@Kolom2])*(Tabel1[Kolom3]=[@Kolom3])*Tabel1[Kolom4])
Zie ook bijlage.
 

Bijlagen

  • TEST_2 (AC).xlsx
    17,7 KB · Weergaven: 22
Laatst bewerkt:
Hallo beiden,

Bedankt voor de input.
Na een beetje opzoekwerk begrijp ik de formules, bedankt hiervoor.
Ik vraag me wel af hoe jullie tot deze oplossingen komen... is dit puur ervaring?

Ik vraag me af waarom ik niet tot deze oplossing kom.. of het aan ervaring ligt, of een gat in mijn denkproces..
Heb het gevoel dat ik een bepaalde logica mis/vergeet om een oplossing te bieden voor dit soort vragen.
Jullie kunnen mij misschien wat tips geven?

Alvast bedankt.
Wocky
 
Ik heb heel veel gelezen en geleerd van dit forum. En ook met excelproblemen: google is je beste vriend !

Greetz/Excelbat
 
Logisch nadenken, veel lezen en zelf uitproberen, en inderdaad google voor wat inspiratie soms (zijn ook heel veel Engelstalige forums).

Succes ermee.
 
Daarom heeft MS ook een handige methode in Excel zelf gemaakt: uitgebreid filter.

ga met de cursor in de tabel met basisgegevens staan;

- tabblad data / optie advanced
- optie : copy to another location
- list range: de tabel die je wil filteren
- criteria range: de tabel waarin de zoekwaarden staan
- copy to: de koprij van de tabel waar de resultaten moeten komen.
 

Bijlagen

  • __advancedfilter snb.xlsx
    11,7 KB · Weergaven: 27
Allen,

Bedankt voor de info.
Weet dat jullie met dit soort ondersteuning de gehele mensheid helpen om kleine stapjes vooruit te gaan.
(mijn mening)

Groeten Wocky.

N.B.: De oplossing die voor mijn situatie de meest gangbare is, is die met de vergelijk-functie.
Maar ben blij de andere ook te hebben mogen ontvangen, verruimd mijn blik alweer.
 
Laatst bewerkt:
Met een matrixformule kom je een heel eind:

Code:
{=INDEX(Tabel1;VERGELIJKEN([@Kolom1]&"_"&[@Kolom2]&"_"&[@Kolom3];Tabel1[Kolom1]&"_"&Tabel1[Kolom2]&"_"&Tabel1[Kolom3];0);4)}


Curly brackets niet zelf intikken, maar formule afsluiten met CTRL-Shift-Enter.

Zie bijlage:

Bekijk bijlage 329854

Greetz/Excelbat

Wil voor toekomstige lezers er nog even bij vermelden dat deze ook zonder de underscores kan:
Code:
{=INDEX(Tabel1;VERGELIJKEN([@Kolom1]&[@Kolom2]&[@Kolom3];Tabel1[Kolom1]&Tabel1[Kolom2]&Tabel1[Kolom3];0);4)}

Groeten Wocky
 
Ik heb nog gevonden dat het met functie zoeken ook gaat, met het (grote) nadeel dat je niet exact kan zoeken.
Zie formule & voorbeeld hieronder.
Met VERT.ZOEKEN kan je normaal wel "exact zoeken", maar omdat ik hier in verschillende kolommen tegelijk wil zoeken, krijg ik het niet klaar met de functie VERT.ZOEKEN
(ook niet met matrix-formule...)

Code:
=ZOEKEN([@Kolom1]&[@Kolom2]&[@Kolom3];Tabel1[Kolom1]&Tabel1[Kolom2]&Tabel1[Kolom3];Tabel1[Kolom4])

Groeten Wocky
Bekijk bijlage TEST_3.xlsx
 
Allen,

Om nog even verder te gaan op zoekfunctie & matrix-formules.
Ik heb voor mezelf & voor mogelijk toekomstige lezers nog wat opgehelderd.
Ik heb de (of een) manier gevonden om de formule(met VERGELIJKEN()) toe te passen zonder "matrixformule".
Ik vroeg me steeds af wat excel nu juist op de achtergrond doet, wanneer een matrixformule wordt gebruikt...
als ik het goed begrijp, dan gebruikt excel deze om om te gaan met "bereiken of ranges" in functies, waar normaal geen range in staat.

Ik vroeg me af waarom de formule met de functie "vergelijken" die eerder gegeven werd, een matrix-input nodig had, aangezien deze formule reeds een matrix (of range) vraagt in het 2de argument (zoeken-matrix).
Als ik het goed begrijp is matrix-input nodig omdat in dit 2de argument gevraagd wordt om verschillende matrixen aan elkaar te breien (matrix1&matrix2&matrix3).
Het blijkt dan essentieel te zijn voor excel om 1st de 3 matrixen in het geheugen in te lezen, om daarna hiervan 1matrix te creëren die de functie ook verwacht en deze dan verder gebuikt als zijn 2de argument.

Als deze theorie klopt, dan kan je dus de 3 aparte matrixen in een extra kolom van de tabel bundelen (kolom4) om deze kolom dan later te kunnen aanduiden wanneer de formule wordt ingegeven.
En dit blijkt dan ook effectief waar.
Met deze wetenschap kan je dan ook de functie "VERT.ZOEKEN" gebruiken, om exacte waarden te zoeken en weer te geven.
De functie INDEX wordt dan weer overbodig.

In bijlage de 2 voorbeelden.

TEST_4: Functie VERT.ZOEKEN zonder matrix-input
Bekijk bijlage TEST_4_Verticaal Zoeken_Zonder MatrixForm.xlsx

TEST_5: Functie VERGELIJKEN zonder matrix-input
Bekijk bijlage TEST_5_Vergelijken_Zonder MatrixForm.xlsx

Nogmaals bedankt voor jullie inzichten.
Groeten Wocky
 
Logisch met een extra kolom.
Maar die was niet aanwezig in je openingspost.
Vandaar de matrixformules.
 
Zonder hulpkolom; matrixformule:

Code:
=OFFSET(D2;MATCH(F2&G2&H2;A2:A28&B2:B28&C2:C28;0)-1;0)
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan