VLOOKUP-vračanje dveh ali več vrednosti

Pomoč pri delu z MS Excelom
Odgovori
ina
Prispevkov: 7
Pridružen: Sr Feb 17, 2010 8:23 am

VLOOKUP-vračanje dveh ali več vrednosti

Odgovor Napisal/-a ina »

V tabeli moram za posameznega bolnika navesti vse diagnoze. Z VLOOKUPom mi vrže ven samo prvo najdeno, jaz bi pa potrebovala vse.
Hvala
admin
Site Admin
Prispevkov: 3712
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Pozdravljeni,

Osnovna zakonitost Excela je, da lahko funkcija piše samo v eno celico, torej rezultat neke funkcije je lahko vpisan samo v tisto celico, kjer se sama funkcija tudi nahaja. Izjema v tem pravilo so tki. mrežne funkcije - a vseeno do neke mere zgoraj napisano velja tudi zanje.

Kaj konkretno ta uvod pomeni za vas? Preprosto da z eno VLOOKUP funkcijo ne boste mogli najti več podatkov! V vašem primeru vam svetujem uporabo filtrov. Torej namesto funkcije uporabite orodje filtriranja in "sfiltrirajte" podatke za enega bolnika.

Lahko pa uporabite tudi vrtilne tabele, a sklepam, da so filtri tisto kar iščete.
lp,
Matjaž Prtenjak
Administrator
ina
Prispevkov: 7
Pridružen: Sr Feb 17, 2010 8:23 am

Odgovor Napisal/-a ina »

Jaz v bistvu tako tabelo imam. Samo v tej tabeli imam 20000 podatkov, jaz pa potrebujem podatke samo za 200 bolnikov. Nekako sem se hotela izogniti ročnemu delu, pa sem mislila da se z vlookupom to da.
Ali obstaja kakšna hitrejša pot od vnašanja vseh 200 bolnikov v filter?
Hvala
admin
Site Admin
Prispevkov: 3712
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Natanko rešitvi vašega problema je namenjen napredni filter.
  1. Predpostaviva, da se kolona, kjer so zapisane številke bolnikov (sklepam, da delate preko številk), sicer pač ime bolnikov... imenuje 'Šifra bolnika'
  2. Nekje na listu torej vpišite 'Šifra bolnika' (oz. pač naziv vaše kolone) in potem pod njo vnestite tistih 200 šifer ali imen (enkrat jih morate vnesti, tu ni dileme).
  3. Potem se postavite v originalno tabelo in izberite opcijo naprednega filtriranja.
  4. Excel vam bo že izbral vašo osnovno tabelo, kot filtrirni pogoj pa označite vseh 201 celic (vključno z imenom stolpca) in pritisnite OK.
  5. V tem trenutku vam bo Excel v vaši originalni tabeli prikazal podatke samo za tistih 200 bolnikov.
  6. In to je to! Bodite pa ZELO pozorni na pogosto napako, ko uporabnikom napredni filter ne deluje - ime stolpca v filtru MORA BITI POPOLNOMA enako kot v originalni tabeli (vključno s presledki in podobnim), zato svetujem, da naslov stolpca kar skopirate!
lp,
Matjaž Prtenjak
Administrator
ina
Prispevkov: 7
Pridružen: Sr Feb 17, 2010 8:23 am

Odgovor Napisal/-a ina »

Super! Točno to potrebujem. Vendar mi na žalost ne deluje.
v delovnem listu imam namreč 200 strani izpisov bolnikov v excelu z glavo dokumenta vred. Ali ga to moti?
Ostalih vaših navodil sem se držala.
Hvala
admin
Site Admin
Prispevkov: 3712
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Da, to ga vsekakor moti! Excel lahko obdeluje podatke samo in izključno, če so v tabelarični obliki! Podatki so v tabelarični obliki tedaj, ko imajo ENO ali VEČ naslovnih vrstic, ki jim NEPREKINJENO (brez praznih vrstic ali kolon) sledijo podatki. Ob tem je seveda tudi smiselno, da so podatki znotraj iste kolone enakega tipa (recimo števila ali datumi, časi, nizi znakov... ).

Če pa imate na listu podatke, ki so že oblikovani kot izpis, torej imajo vmes prazne vrstice in podobno, potem pa Excel takšnih podatkov ne more obravnavati kot tabelo in zatorej nad njimi ne more izvajati tabelaričnih poizvedb.

Če torej podatkov nimate urejenih v tabelo, potem morate podatke najprej urediti v ustrezno obliko ali pa napisati makro, ki bo znal iskati podatke tudi na obstoječi obliki. (Oboje vam lahko naredim tudi jaz.)
lp,
Matjaž Prtenjak
Administrator
ina
Prispevkov: 7
Pridružen: Sr Feb 17, 2010 8:23 am

Odgovor Napisal/-a ina »

Podatke sem razvrstila po naraščajočem redu in odstranila "moteče dejavnike", vendar še vedno ne deluje.
Ostala sem brez idej.
Hvala vseeno za pomoč.
admin
Site Admin
Prispevkov: 3712
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Potem pa mora delovati. Priporočam vam, da odprete nov delovno zvezek in vanj vnesete testno tabelo, npr:

Koda: Izberi vse

ime    vrednost
miha      34
jože      23
tona       5
franci    35
miha      34
jože      56
tona      54
franci     6
miha      57
jože      56
tona       8
franci   678
ob njej pa si pripravite filtrirni pogoj; npr:

Koda: Izberi vse

ime
miha
franci
Sedaj pa v napredni filter vnesite pogoje (primer):
  • Obseg seznama: $A$1:$B$13
  • Obseg s pogoji: $F$1:$F$3
Potrdite in v tabeli boste videli vse zapise za Miho in Francija.
lp,
Matjaž Prtenjak
Administrator
ina
Prispevkov: 7
Pridružen: Sr Feb 17, 2010 8:23 am

Odgovor Napisal/-a ina »

No, pa je le ratalo. Napako sem naredila, ker sem pogoje postavila na drug list in ne na list kjer se nahaja osnovna tabela.
Hvala, hvala za pomoč!
admin
Site Admin
Prispevkov: 3712
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Saj tudi na drugem delovnem listu lahko to počnete.
lp,
Matjaž Prtenjak
Administrator
ina
Prispevkov: 7
Pridružen: Sr Feb 17, 2010 8:23 am

Odgovor Napisal/-a ina »

Aja? Jah, tam pa nisem označila 'Samo enolični zapisi' .
No, pa sem se še nekaj naučila.
admin
Site Admin
Prispevkov: 3712
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

:):) Enolični zapisi s tem nimajo nič. Enolični zapisi pomenijo, da bi Excel vrnil samo eno vrstico v primeru, da je več ustreznih vrstic popolnoma istih!

Da lahko napredi filter uporabite na drugem listu morate namreč začeti na tistem drugem listu in čarovnika pognati od tam.
lp,
Matjaž Prtenjak
Administrator
ina
Prispevkov: 7
Pridružen: Sr Feb 17, 2010 8:23 am

Odgovor Napisal/-a ina »

:oops: No, važno, da mi je uspelo.
admin
Site Admin
Prispevkov: 3712
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Oh, nič ne zardujte, tisti smeški niso mišljeni v slabem pomenu besede! In res je, važno je, da vam je uspelo!
lp,
Matjaž Prtenjak
Administrator
Odgovori