Združevanje funkcije VLOOKUP in drugih funkcij

Pomoč pri delu z MS Excelom
Odgovori
zoki01
Prispevkov: 6
Pridružen: Sr Nov 01, 2006 12:23 pm

Združevanje funkcije VLOOKUP in drugih funkcij

Odgovor Napisal/-a zoki01 »

Moje vprašanje je naslednje:
V celico I2 vnesem število 17500. V celici I3 je funkcija =VLOOKUP(I2;cenik 2007!L2:M282;2). Ta vrne osnovni rezultat 38,5. V celici I3 pa je še možnost vpisa črke "b", ki predstavlja 10% pribitka na osnovni rezultat in črke "c", ki predstavlja 20% pribitka. Kako bi izgledala formula v celici I3, ki bi upoštevala ta pogoja? Vnaprej hvala za pomoč.
zoki01
Prispevkov: 6
Pridružen: Sr Nov 01, 2006 12:23 pm

Odgovor Napisal/-a zoki01 »

Popravek! Črke b in c bi se naj vpisale v celico J2 in ne v I3.
admin
Site Admin
Prispevkov: 3712
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Pozdravljeni,

Preprosto dobljeni rezultat pomnožite z ustreznim faktorjem in sicer; če J2 = 'b' potem je faktor 1,1; če J2 = 'c' potem je faktor 1,2; sicer pa je faktor 1:

Koda: Izberi vse

=IF(J2="b"; 1,1; IF(J2="b"; 1,2; 1))
Vse skupaj sedaj pač izgleda takole:

Koda: Izberi vse

=VLOOKUP(I2;cenik 2007!L2:M282;2)*=IF(J2="b"; 1,1; IF(J2="b"; 1,2; 1))
PS: Še bolje pa je, da tudi te faktorej lepo zapišete v tabelo in faktorje iščete s funkcijo VLOOKUP! (No, tako je tudi edino pravilno; saj če spremenite faktor iz 1,1 na 1,5 morate v prvem primeru popravito N formul, v drugem primeru pa samo vpis v ENI tabeli!)
lp,
Matjaž Prtenjak
Administrator
zoki01
Prispevkov: 6
Pridružen: Sr Nov 01, 2006 12:23 pm

Odgovor Napisal/-a zoki01 »

Hvala za hiter odgovor. Mislim pa, da zadnji "b" v kodi mora biti "c", potem zadeva deluje pravilno.
V zvezi s tem imam še eno vprašanje. Katero funkcijo bi moral vključiti v omenjeno kodo v primeru, da se v celico I2 vnese število, ki ga v tabeli ni. Funkcija VLOOKUP namreč poišče v tabeli število, ki je zadnje najmanjše število od tistega, ki je v celici I2. Želim, da mi funkcija v primeru vpisa števila, ki ga ni v tabeli vrne rezultat "error", oz. opozorilo, da tega števila ni na listu "cenik 2007".
admin
Site Admin
Prispevkov: 3712
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Funkciji VLOOKUP morate dodati še en parameter, ki ima vrednost false:

Koda: Izberi vse

VLOOKUP(I2;cenik 2007!L2:M282;2,false)
lp,
Matjaž Prtenjak
Administrator
zoki01
Prispevkov: 6
Pridružen: Sr Nov 01, 2006 12:23 pm

Odgovor Napisal/-a zoki01 »

Kakšna rešitev bi bila primerna v zgornjem primeru, če bi želel imeti kot rezultat višje število iz tabele "cenik 2007", funkcija VLOOKUP namreč vrne najmanjše število.
admin
Site Admin
Prispevkov: 3712
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Hm,

Funkcija VLOOKUP vrača elemente, ki so iz vrstice, v kateri se iskan podatek natančno ujema z iskanim ali pa iz vrstice, kjer se rezultat najbližje iskani vrednosti, a je od nje MANJŠI. Drugega VLOOKUP ne zna. Z drugimi besedami to pomeni, da vaše želje funkcija VLOOKUP ne more izpolniti.
lp,
Matjaž Prtenjak
Administrator
zoki01
Prispevkov: 6
Pridružen: Sr Nov 01, 2006 12:23 pm

Odgovor Napisal/-a zoki01 »

Hvala za pomoč. Imam pa še naslednje vprašanje:
V celico A1 se vnašajo neka števila od 1 naprej, ki se množijo z 3 različnimi koeficienti. Npr.: 1-10.000 z 0,004, 10.001-30.000 z 0,003 in 30.001 dalje z 0,002. Kako bi izgledala formula v celici B1, če bi uporabil npr. funkcijo IF?
admin
Site Admin
Prispevkov: 3712
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

:):):)

Saj ravno temu je funkcija VLOOKUP tudi namenjena in zato deluje tako kot deluje. V vašem primeru morate imeti tabelo, ki izgleda takole:

Koda: Izberi vse

     A       B
1      1   0,004
2  10001   0,003
3  30001   0,002
In ustrezen koeficient dobite z uporabo funkcije =VLOOKUP(E2;A1:C3;1;TRUE)
lp,
Matjaž Prtenjak
Administrator
Odgovori