Avatar billede mr.handstand Novice
17. august 2004 - 14:50 Der er 8 kommentarer og
1 løsning

vlookup find kolonne 4 til venstre for nøglefeltet

Hejsa,

Jeg vil gerne kunne returnere en værdi fra en celle til venstre for en VLOOKUP - kan jeg det?

jeg modtager et input-ark, som jeg ikke ønsker at placere formler i. I dette ark er D kolonnen indeholdende en nøgleværdi, ud fra hvilken jeg ønsker A kolonnens felt som svar, når jeg på mit formel-ark laver et lookup.
Jeg vil gerne undgå at lave et ekstra "skygge-ark" som blot sætter kolonnerne i en anden rækkefølge.

Jeg overvejer en form for address.offset (0,-4) men kan ikke lige gennemtænke det.

Hjælp! :-)

Ark: empdir_import:
Kolonne A: emp-id
Kolonne D: Username (key)
17. august 2004 - 14:54 #1
Nej det er desværre ikke muligt, nøglefeltet skal være første kolonne/række i LOOKUP()-funktionerne.
Avatar billede clemen Nybegynder
17. august 2004 - 15:07 #2
Jeg ved ikke om dette er en mulighed, formlen er engelsk.

=INDEX(A:D;MATCH(E6;D:D);1)

Du kan prøve
Avatar billede mr.handstand Novice
17. august 2004 - 15:23 #3
Det var en elegant løsning clemen. Ja, der bliver åbenbart ved med at være effektive funktioner i Excel som jeg ikke kender.
For at præcisere min søgning byggede jeg lige et vlookup-ind som tjekker at værdien findes:

I formlen herunder er:
B5 = opslagsværdi(username)
D-kolonne = key values
A-Kolonne = return values

=IF(ISNA(VLOOKUP(B5;D:D;1;FALSE));"not found";INDEX(A:D;MATCH(B5;D:D);1))

Jeg takker mange gange!
Avatar billede bak Seniormester
17. august 2004 - 15:42 #4
Pas lige på med match, hvis i ikke har den 3. parameter med.
Brug parameteren 0, så vil match altid søge efter den nøjagtige værdi.
1 er nemlig default og det vil ikke virke på samme måde

sakset fra hjælpen (bemærk sidste linie)
*********************
If match_type is 1, MATCH finds the largest value that is less than or equal to lookup_value. Lookup_array must be placed in ascending order: ...-2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE.


If match_type is 0, MATCH finds the first value that is exactly equal to lookup_value. Lookup_array can be in any order.


If match_type is -1, MATCH finds the smallest value that is greater than or equal to lookup_value. Lookup_array must be placed in descending order: TRUE, FALSE, Z-A,...2, 1, 0, -1, -2,..., and so on.

If match_type is omitted, it is assumed to be 1.
********************


=IF(ISNA(MATCH(B5;D:D;0));"not found";INDEX(A:D;MATCH(B5;D:D;0);1))
Avatar billede mr.handstand Novice
17. august 2004 - 15:51 #5
hmm... måske var jeg for hurtigt ude.
Jeg manglede lige at tilføje i min egen formel, at match skal være type: 0 (exact match). Default vil den ikke finde et exact match (stadig dog ikke casesensitive, selv om 0 er valgt)

=IF(ISNA(VLOOKUP(B5;D:D;1;FALSE));"not found";INDEX(A:D;MATCH(B5;D:D;0);1))
Avatar billede mr.handstand Novice
17. august 2004 - 15:52 #6
det var vi enige om, bak... :-)
Avatar billede bak Seniormester
17. august 2004 - 16:11 #7
Så er den case-sensitiv
=IF(ISERROR(FIND(B5;VLOOKUP(B5;D:D;1;FALSE);1));"not found";INDEX(A:D;MATCH(B5;D:D;0);1))
Avatar billede knowit-mmp Nybegynder
18. august 2004 - 13:13 #8
En anden mulighed i stedet for både match og vlookup er at benytte den almindelige lookup formel :

=LOOKUP(B5;D:D;A:A)

Den returnerer det der står i a kolonnen udfor den funde b5 værdi i D-kolonnen.
Avatar billede bak Seniormester
18. august 2004 - 14:36 #9
yeps knowit-mpp, her er ulempen bare igen at data skal være sorteret, ellers er det jo en meget enkel funktion at bruge, idet den kombinerer index/match :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester