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

lookup functies

Status
Niet open voor verdere reacties.

spattah

Gebruiker
Lid geworden
8 jul 2006
Berichten
5
Hallo allemaal,

Ik ben al een tijdje bezig om een formule te creeeren welke door een gegeven waarde opzoek gaat naar die waarde in een grote tabel en de waardeteruggeeft dat in de kolom rechts van deze waarde staat.

Voorbeeld:

tabel
R1 | C2 | C3 | C4 |
R1 | D1 | D3 | D5 |
R2 | D2 | D4 | D6 |

Als ik D1 in cel 1 invoer, wil ik in cel 2 de waarde D3 terugzien
Als ik D4 in cel 1 invoer, wil ik in cel 2 de waarde D6 terugzien

Cel 1 is dus input, en cel 2 is output(bv E1 en E2)

Het probleem is een beetje dat de kolom variabel moet zijn, want als ik bv deze formule verzin:
=VLOOKUP(input uit cel 1,B2:D4,2,False)
deze formule geeft een goed antwoord voor als ik als input D1 en D2 heb, maar niet andere input.

Ik hoop dat het een beetje duidelijk is waar ik heen wil. Op een engels forum had ik als antwoord op deze vraag de volgende formule gehad:

=VLOOKUP(H1,OFFSET(B1:C2,,MIN(IF(B1:D2=H1,COLUMN(B1:D2)-COLUMN($B2)))),2,0)

echter hier kom ik niet uit, maar misschien heeft iemand er wat aan.

Wie kan mij verder helpen?

mvg, Spattah
 
spattah,

Ik denk dat de fout zit achter: OFFSET(B1:C2,, staat hier niet een , (komma) te veel.
In een ander forum heb je de zelfde vraag gesteld, met dezelfde fout.


=VLOOKUP(H1,OFFSET(B1:C2,,MIN(IF(B12=H1,COLUMN(B12)-COLUMN($B2)))),2,0)

=VERT.ZOEKEN(H1;VERSCHUIVING(B1:C2;MIN(ALS(B12=H1;KOLOM(B12)-KOLOM($B2))));2;0)

Ad.
 
Ik heb er nu dus van gemaakt:

VLOOKUP(A6;OFFSET(B1:C2;MIN(IF(B1:D2=A6;COLUMN(B1:D2)-COLUMN($B2))));2;0)

hier geeft excel een foutmelding op van te weinige argumenten. Het probleem is ook een beetje dat ik deze formule niet begrijp... Zie je nog een foutje?

bedankt.

gr. Spattah
 
Spattah

Dit werkt wel degelijk:

=VERT.ZOEKEN(H1;VERSCHUIVING(B1:C2;;MIN(ALS(B1:D2=H1;KOLOM(B1:D2)-KOLOM($B2))));2;0)

Wel is het een array formule, dus Ctrl-Shift-Enter, en niet simpelweg Enter.

Wigi
 
Wigi zei:
Spattah

Dit werkt wel degelijk:

=VERT.ZOEKEN(H1;VERSCHUIVING(B1:C2;;MIN(ALS(B1:D2=H1;KOLOM(B1:D2)-KOLOM($B2))));2;0)

Wel is het een array formule, dus Ctrl-Shift-Enter, en niet simpelweg Enter.

Wigi

Er zat nog een fout in: D1 en D2 geven #N/B. Dit los je op met:

=VERT.ZOEKEN(H1;VERSCHUIVING(A1:B2;;MIN(ALS(A1:C2=H1;KOLOM(A1:C2)-KOLOM($A1))));2;0)

Wigi
 
Het gaat de goede kant op. Zelf dacht ik dat we er al waren.. Echter we moeten nog even doorpuzzelen.

Voor het triviale voorbeeld werkt de genoemde formule: Daarvoor erg bedankt! Echter voor mijn 'probleem' zijn we er nog niet helemaal.

Ik heb namelijk een hele grote tabel van Kolom A1t/m Kolom AN34 waarin dus de opgegeven waarde gevonden wordt.

In de volgende formule:
VLOOKUP(B37;OFFSET(A1 :AN34;;MIN(IF(A1: AN34=B37;COLUMN(A1: AM34)-COLUMN($A1))));2;0)

gaat het goed tot op zeker hoogte goed, maar het probleem is nu:
Stel Kolom F en naastliggende kolom G bevat volgende waarden:
1 aap
2 roos
3 vis
5 vuur
8 mies

en kolom K en naastliggende kolom L bevat:
4 henk
6 klaas
7 jan

Als ik nu met deze gegevens op een bepaalde plek buiten de range A1:AN34 een lijst wil vullen moet er uit komen
1 aap
2 roos
3 vis
4 henk
5 vuur
6 klaas
7 jan
8 mies

Met de formule die ik nu heb zo er uit komen:

1 aap
2 roos
3 vis
4 #n/a
5 #n/a
6 #n/a
7 #n/a
8 #n/a

dit komt meen ik door het onderstreepte stukje van de formule, het lukt mij niet om dit te verhelpen..
VLOOKUP(B37;OFFSET(A1 :AN34;;MIN(IF(A1: AN34=B37;COLUMN(A1: AM34)-COLUMN($A1))));2;0)

Hopelijk is het een beetje duidelijk wat ik bedoel.. Wie kan mij verder helpen?

gr. Spattah
 
Ik ben er zelf al uit! Ik moest natuurlijk de kolommen vastzetten. Het is nu geworden:

=VLOOKUP(B37;OFFSET($A$1:$AN$34;;MIN(IF($A$1:$AN$34=B37;COLUMN($A$1:$AM$34)-COLUMN($A1))));2;0)

iedereen bedankt voor de hulp!!

gr. Spattah
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan