[Excel] Vert.zoeken pakt steeds de onderste uit het bereik *

Pagina: 1
Acties:
  • 5.927 views sinds 30-01-2008

Acties:
  • 0 Henk 'm!

  • killerflappy
  • Registratie: Februari 2002
  • Laatst online: 29-08-2021
Heb in excel een formule gemaakt met verticaal zoeken.
In de tabelmatrix wordt altijd de onderste cel genomen.
Er moet een gebied op worden gegeven, waar het zoeken in moet gebeuren.
Dan een kolomindex. Wanneer de gegevens gevonden zijn, moet de waarde uit die kolom worden gehaald. Deze staat voor de waard de te vinden waarde.

Er word altijd het onderste gepakt uit die kolom.

Formule is als volgt.

=VERT.ZOEKEN(-te vinden waarde-;L1:U18;1)

Hier komt altijd de waarde uit L18.
Wat doe ik fout?

Acties:
  • 0 Henk 'm!

Anoniem: 9449

Waarschijnlijk moet je nog even ;FALSE toevoegen voor ).

Acties:
  • 0 Henk 'm!

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Geef even aan welke waarden je gebruikt. In tags natuurlijk en beperk het tot een paar rijen en twee of drie relevante kolommen, anders is het niet leesbaar. En check natuurlijk zelf even of de 'benaderen' parameter relevant is voor je.

Kleine titelaanpassing: '[Excel] Vert.zoeken pakt elke keer de onderste uit de aangew' -> '[Excel] Vert.zoeken pakt steeds de onderste uit het bereik *' Dat past tenminste :P

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


Acties:
  • 0 Henk 'm!

  • killerflappy
  • Registratie: Februari 2002
  • Laatst online: 29-08-2021
Anoniem: 9449 schreef op maandag 13 november 2006 @ 10:57:
Waarschijnlijk moet je nog even ;FALSE toevoegen voor ).
Geprobeerd met ONWAAR. Resultaat is #N/B

Acties:
  • 0 Henk 'm!

  • Dido
  • Registratie: Maart 2002
  • Laatst online: 15-06 13:50

Dido

heforshe

killerflappy schreef op maandag 13 november 2006 @ 11:03:
Geprobeerd met ONWAAR. Resultaat is #N/B
Dan is de waarde dus niet gevonden. ;)

Wat betekent mijn avatar?


Acties:
  • 0 Henk 'm!

  • killerflappy
  • Registratie: Februari 2002
  • Laatst online: 29-08-2021
Dido schreef op maandag 13 november 2006 @ 11:04:
[...]

Dan is de waarde dus niet gevonden. ;)
In de aangegeven kolom staat wel degelijk een waarde

Acties:
  • 0 Henk 'm!

  • Dido
  • Registratie: Maart 2002
  • Laatst online: 15-06 13:50

Dido

heforshe

killerflappy schreef op maandag 13 november 2006 @ 11:10:
In de aangegeven kolom staat wel degelijk een waarde
De waarde waar jij op zoekt is niet gevonden.

Als je geen voorbeelddata post kunnen wij ook niet raden wat er precies aan de hand is, maar de melding betkent simpelweg dat jij zoekt naar een waarde die niet bestaat in de kolom waar je in zoekt.

Als jij denkt dat die er wel in staat, kan dat bijvoorbeeld liggen aan het feit dat je numerieke met alfanumerieke gegevens vergelijkt. Er kan ook iets anders aan de hand zijn. Maar we gaan niet zitten gokken ;)

Wat betekent mijn avatar?


Acties:
  • 0 Henk 'm!

  • killerflappy
  • Registratie: Februari 2002
  • Laatst online: 29-08-2021
Dido schreef op maandag 13 november 2006 @ 11:15:
[...]

De waarde waar jij op zoekt is niet gevonden.

Als je geen voorbeelddata post kunnen wij ook niet raden wat er precies aan de hand is, maar de melding betkent simpelweg dat jij zoekt naar een waarde die niet bestaat in de kolom waar je in zoekt.

Als jij denkt dat die er wel in staat, kan dat bijvoorbeeld liggen aan het feit dat je numerieke met alfanumerieke gegevens vergelijkt. Er kan ook iets anders aan de hand zijn. Maar we gaan niet zitten gokken ;)
http://img101.imageshack.us/my.php?image=vertzoekengl3.jpg

Acties:
  • 0 Henk 'm!

  • Dido
  • Registratie: Maart 2002
  • Laatst online: 15-06 13:50

Dido

heforshe

Dat klopt dan ook wel: de waarde vijf staat niet in de zoekkolom (Dat is namelijk de kolom met de waarden 1, 2, 3!).
Aangezien je de optie "WAAR" (default) gebruikt krijg je de beste benadering: 3.
Gebruik je "ONWAAR" dan krijg je "niet gevonden".

Works as designed, dus :)

Wat betekent mijn avatar?


Acties:
  • 0 Henk 'm!

  • hufkes
  • Registratie: Maart 2000
  • Laatst online: 01:12

hufkes

nee, daar staat niet hufter!

je zoekt naar 5 in de eerste kolom en die staat er niet, als je de twee kolommen omwisselt en je bereik hetzelfde laat, dan werkt het zoals je wil. Oh ja, en nog even aangeven dat je het "antwoord" uit de tweede kolom wilt hebben, dus het wordt dan
code:
1
=vlookup(5;a1:b3;2)

[ Voor 30% gewijzigd door hufkes op 13-11-2006 12:09 ]

Onderstaande signature is al >20jr oud ***hoe dan***
---
Het internet is een veelbelovend medium
....dat maar heel weinig van zijn beloftes nakomt.
Wat weg is... raak je nooit meer kwijt :P


Acties:
  • 0 Henk 'm!

  • killerflappy
  • Registratie: Februari 2002
  • Laatst online: 29-08-2021
hufkes schreef op maandag 13 november 2006 @ 12:07:
je zoekt naar 5 in de eerste kolom en die staat er niet, als je de twee kolommen omwisselt en je bereik hetzelfde laat, dan werkt het zoals je wil. Oh ja, en nog even aangeven dat je het "antwoord" uit de tweede kolom wilt hebben, dus het wordt dan
code:
1
=vlookup(5;a1:b3;2)
Helaas is de kolom omwissel geen optie.

Acties:
  • 0 Henk 'm!

  • hufkes
  • Registratie: Maart 2000
  • Laatst online: 01:12

hufkes

nee, daar staat niet hufter!

dan plak je een hidden kolom erachter waarin je gewoon rechtstreeks de kolom ervoor kopieert :?

Onderstaande signature is al >20jr oud ***hoe dan***
---
Het internet is een veelbelovend medium
....dat maar heel weinig van zijn beloftes nakomt.
Wat weg is... raak je nooit meer kwijt :P


Acties:
  • 0 Henk 'm!

  • killerflappy
  • Registratie: Februari 2002
  • Laatst online: 29-08-2021
hufkes schreef op maandag 13 november 2006 @ 12:21:
dan plak je een hidden kolom erachter waarin je gewoon rechtstreeks de kolom ervoor kopieert :?
Er word vaak geknipt en geplakt. Ook worden reglmatig rijen of losse cellen ingevoegd.
De hidden kolom mist dan in sommige cellen de verwijzing. Dus ook geen optie.

Acties:
  • 0 Henk 'm!

  • Dido
  • Registratie: Maart 2002
  • Laatst online: 15-06 13:50

Dido

heforshe

Vert.Zoeken kun je inderdaad alleen gebruiken om een waarde in de meest linker kolom van je range op te zoeken. (Dat staat ook in de help van Excel.)

Als je zeker weet dat je gezochte waardes maximaal 1 keer voorkomen, dan zou je (hoewel dat performancewise niet fijn is, waarschijnlijk), kunnen werken met Som.Als (SUMIF), op voorwaarde dat de waardes die je terug wilt krijgen numeriek zijn.
Iets als =SUMIF(B1:B3; 5; A1:A3)

Als je waardes alphanumeriek zijn wordt dat lastig.

Wat betekent mijn avatar?


Acties:
  • 0 Henk 'm!

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 22:35
Wat je kan doen is het volgende:
In de kolom waarin je wilt zoeken kan je met de functie "Match" (weet iemand wat dat in het nederlands is?) de relatieve positie van je zoekwaarde vinden. Die gebruik je weer als argument bij de functie index.

Dus iets als =INDEX(A1:A3;MATCH(5;B1:B3;0))

Acties:
  • 0 Henk 'm!

  • Reinier
  • Registratie: Februari 2000
  • Laatst online: 07:00

Reinier

\o/

Match kan inderdaad helpen, in het Nederlands is dat de functie vergelijken.

Acties:
  • 0 Henk 'm!

  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 06:58

Tomatoman

Fulltime prutser

killerflappy schreef op maandag 13 november 2006 @ 12:23:
[...]


Er word vaak geknipt en geplakt. Ook worden reglmatig rijen of losse cellen ingevoegd.
De hidden kolom mist dan in sommige cellen de verwijzing. Dus ook geen optie.
In dat geval moet je je spreadsheet anders inrichten. Over het algemeen is het geen goed idee om gebruikers zonder beperkingen te laten knippen en plakken in een spreadsheet vol met formules. Ken je trouwens de 'lock cell' (in het Nederlands waarschijnlijk 'cel vergrendelen') functie? Daarmee kun je een deel van de cellen in het werkblad beveiligen tegen ongewild aanpassen. Zie de helpfiles van Excel voor meer info.

Een goede grap mag vrienden kosten.


Acties:
  • 0 Henk 'm!

  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 06:58

Tomatoman

Fulltime prutser

Ik heb de oplossing voor je probleem gevonden. Zie het plaatje. In de cellen A1:C3 staan alle mogelijke waarden. Je gaat zoeken naar de waarde 5.

Afbeeldingslocatie: http://img226.imageshack.us/img226/967/oplossingbi2.jpg

Onder elk van de 3 kolommen zoek je naar de waarde 5. Bij de eerste kolom (cel A4) is de formule:
=VLOOKUP(5;A$1:A$3;1;FALSE)
Deze formule kopieer je naar de cellen B4 en C4.
In de cel D4 ga je vervolgens horizontaal zoeken naar de waarde 5:
=HLOOKUP(5;A4:C4;1;FALSE)
Dit resulteert uiteraard in de zoekwaarde 5.

Een goede grap mag vrienden kosten.


Acties:
  • 0 Henk 'm!

  • Dido
  • Registratie: Maart 2002
  • Laatst online: 15-06 13:50

Dido

heforshe

tomatoman: wat is precies het nut van de door jou beschreven acties :?
Je zoekt een waarde 5, en je krijgt een waarde 5.

Dan kun je ook gewoon '5' in die cel tikken :P

Als ik het goed begrijp wil de TS niet 5, maar 2 als waarde terugkrijgen (de waarde uit de eerste kolom op de rij waar 5 in staat), en dat kan niet met vlookup.

Wat betekent mijn avatar?


Acties:
  • 0 Henk 'm!

Anoniem: 9449

Als je er echt niet uitkomt moet je een array functie gebruiken.

Die werken altijd.

Acties:
  • 0 Henk 'm!

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 22:35
Anoniem: 9449 schreef op maandag 13 november 2006 @ 13:36:
Als je er echt niet uitkomt moet je een array functie gebruiken.

Die werken altijd.
Maar dat wil niet zeggen dat ze altijd doen wat je wilt. :+

Acties:
  • 0 Henk 'm!

  • killerflappy
  • Registratie: Februari 2002
  • Laatst online: 29-08-2021
Dido schreef op maandag 13 november 2006 @ 13:22:
tomatoman: wat is precies het nut van de door jou beschreven acties :?
Je zoekt een waarde 5, en je krijgt een waarde 5.

Dan kun je ook gewoon '5' in die cel tikken :P

Als ik het goed begrijp wil de TS niet 5, maar 2 als waarde terugkrijgen (de waarde uit de eerste kolom op de rij waar 5 in staat), en dat kan niet met vlookup.
Precies. 2 zou als uitkomst moeten komen.

Acties:
  • 0 Henk 'm!

  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 06:58

Tomatoman

Fulltime prutser

Dido schreef op maandag 13 november 2006 @ 13:22:
tomatoman: wat is precies het nut van de door jou beschreven acties :?
Je zoekt een waarde 5, en je krijgt een waarde 5.

Dan kun je ook gewoon '5' in die cel tikken :P

Als ik het goed begrijp wil de TS niet 5, maar 2 als waarde terugkrijgen (de waarde uit de eerste kolom op de rij waar 5 in staat), en dat kan niet met vlookup.
Ik dacht te begrijpen dat de TS wil controleren of een nader te bepalen waarde aanwezig is in een range met cellen. Hij schrijft letterlijk:
killerflappy schreef op maandag 13 november 2006 @ 10:53:
Er moet een gebied op worden gegeven, waar het zoeken in moet gebeuren.
Dan een kolomindex. Wanneer de gegevens gevonden zijn, moet de waarde uit die kolom worden gehaald.
Dat is toch precies wat mijn voorbeeldje doet? Ter verduidelijking zoek ik in het voorbeeld eenvoudigweg naar de waarde 5, terwijl je in de praktijk natuurlijk benieuwd bent of de waarde in een bepaalde cel voorkomt in de lookup list.
killerflappy schreef op maandag 13 november 2006 @ 13:45:
[...]


Precies. 2 zou als uitkomst moeten komen.
Da's iets anders dan wat je vroeg. :)

[edit]
Hmm, nu ik het voorbeeld van de TS nog een keer bekijk begrijp ik helemaal niet meer wat de bedoeling is. Er staan 2 kolommen in, in de eerste kolom staan de waarden 1, 2 en 3 en in de tweede kolom staan de waarden 4, 5 en 6. Vertel nou nog een keer precies wat er gezocht moet worden en wat de functie moet retourneren. In jouw oorspronkelijke geef je een kolomindex 1 aan, terwijl in de matrix in het voorbeeldplaatje 2 kolommen aanwezig zijn :?. * Tomatoman is in verwarring.

[ Voor 15% gewijzigd door Tomatoman op 13-11-2006 17:17 ]

Een goede grap mag vrienden kosten.


Acties:
  • 0 Henk 'm!

  • Dido
  • Registratie: Maart 2002
  • Laatst online: 15-06 13:50

Dido

heforshe

tomatoman schreef op maandag 13 november 2006 @ 17:10:
Ik dacht te begrijpen dat de TS wil controleren of een nader te bepalen waarde aanwezig is in een range met cellen.
Ik geef toe dat de duidelijkheid wel wat te wensen over liet, maar uit de beschrijving en het voorbeeld werd toch wel duidelijk wat de bedoeling was, namelijk zoeken in een andere dan de meest linkse kolom van een range.

Als de TS had gewild wat jij begreep was een simpele MATCH voldoende geweest, trouwens. Een vlookup is wat overkill dan. :)
Hmm, nu ik het voorbeeld van de TS nog een keer bekijk begrijp ik helemaal niet meer wat de bedoeling is. Er staan 2 kolommen in, in de eerste kolom staan de waarden 1, 2 en 3 en in de tweede kolom staan de waarden 4, 5 en 6. Vertel nou nog een keer precies wat er gezocht moet worden en wat de functie moet retourneren. In jouw oorspronkelijke geef je een kolomindex 1 aan, terwijl in de matrix in het voorbeeldplaatje 2 kolommen aanwezig zijn :?. * tomatoman is in verwarring.
Hij wil dus inderdaad de data uit kolom 1 terug (vandaar die index), maar hij wil de gegevens matchen in kolom 2 van de range. En dat kan niet omdat vlookup, zoals goed gedocumenteerd is, altijd matched op de meest linkse kolom.

[ Voor 38% gewijzigd door Dido op 13-11-2006 17:20 ]

Wat betekent mijn avatar?


Acties:
  • 0 Henk 'm!

  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 06:58

Tomatoman

Fulltime prutser

Aha, nu begrijp ik het. Ik meende te begrijpen dat hij werkte met een matrix [y, x] met waarden, waarbij zowel y als x niet van tevoren bekend is (dus het aantal kolommen is niet altijd 2).
killerflappy schreef op maandag 13 november 2006 @ 12:23:
[...]
Er word vaak geknipt en geplakt. Ook worden reglmatig rijen of losse cellen ingevoegd.
De hidden kolom mist dan in sommige cellen de verwijzing. Dus ook geen optie.
Nu ik het nog een keer teruglees zie ik dat er wel rijen en losse cellen worden ingevoegd, maar geen kolommen. Enfin, probleem opgelost :).

Een goede grap mag vrienden kosten.


Acties:
  • 0 Henk 'm!

  • killerflappy
  • Registratie: Februari 2002
  • Laatst online: 29-08-2021
Dido schreef op maandag 13 november 2006 @ 17:18:
[...]

Ik geef toe dat de duidelijkheid wel wat te wensen over liet, maar uit de beschrijving en het voorbeeld werd toch wel duidelijk wat de bedoeling was, namelijk zoeken in een andere dan de meest linkse kolom van een range.

Als de TS had gewild wat jij begreep was een simpele MATCH voldoende geweest, trouwens. Een vlookup is wat overkill dan. :)

[...]

Hij wil dus inderdaad de data uit kolom 1 terug (vandaar die index), maar hij wil de gegevens matchen in kolom 2 van de range. En dat kan niet omdat vlookup, zoals goed gedocumenteerd is, altijd matched op de meest linkse kolom.
Precies

Acties:
  • 0 Henk 'm!

Anoniem: 113297

onkl geeft toch de oplossing?

Acties:
  • 0 Henk 'm!

  • killerflappy
  • Registratie: Februari 2002
  • Laatst online: 29-08-2021
Anoniem: 9449 schreef op maandag 13 november 2006 @ 13:36:
Als je er echt niet uitkomt moet je een array functie gebruiken.

Die werken altijd.
Wat is de nederlandse benaming van array?

Acties:
  • 0 Henk 'm!

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 22:35
offtopic:
Ach, ik wordt wel vaker genegeerd. :'( :+
killerflappy schreef op dinsdag 14 november 2006 @ 10:40:
[...]


Wat is de nederlandse benaming van array?
Doe jezelf een lol en ga (voor dit probleem) niet met arrayformules werken. Array's zijn nogal vervelend in het gebruik en zijn hier overbodig. Meestal gebruik ik iets wat vervelend in het gebruik is vooral als er geen minder vervelend alternatief is. (maar ja, wie ben ik :*) )

Acties:
  • 0 Henk 'm!

  • killerflappy
  • Registratie: Februari 2002
  • Laatst online: 29-08-2021
onkl schreef op dinsdag 14 november 2006 @ 12:05:
[...]

offtopic:
Ach, ik wordt wel vaker genegeerd. :'( :+


[...]

Doe jezelf een lol en ga (voor dit probleem) niet met arrayformules werken. Array's zijn nogal vervelend in het gebruik en zijn hier overbodig. Meestal gebruik ik iets wat vervelend in het gebruik is vooral als er geen minder vervelend alternatief is. (maar ja, wie ben ik :*) )
Dus dit gaat ook niet op.

Acties:
  • 0 Henk 'm!

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 22:35
onkl schreef op maandag 13 november 2006 @ 12:55:
Wat je kan doen is het volgende:
In de kolom waarin je wilt zoeken kan je met de functie "Match" (weet iemand wat dat in het nederlands is?) de relatieve positie van je zoekwaarde vinden. Die gebruik je weer als argument bij de functie index.

Dus iets als =INDEX(A1:A3;MATCH(5;B1:B3;0))
TS, kan je misschien aangeven wat het probleem is met deze kant en klare oplossing?

Acties:
  • 0 Henk 'm!

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Zo werkt het inderdaad niet. Op aangedragen suggesties reageer je met eenregelige antwoorden, terwijl het al een paar keer duidelijk is aangegeven hoe het wel moet. Als je hulp wilt hebben zul je bereid moeten zijn ook zelf wat te doen.

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

Pagina: 1

Dit topic is gesloten.