Pozdravljeni,
v excelu imam narejen combobox za izbor artiklov, artikli so v drugem delovnem listu. Ko izberem podatek artikel v comboboxu se mi ta vpiše v celico in v naseldnje celice še enota ter cena. Problem se mi pojavi ko je besedilo (artikel) predolgo. Artikel se mi ustrezno izpiše, naslednja dva podatka pa ne (napiše #Value!), če je besedilo kartko pa deluje pravilno. Kaj bi lahko bilo narobe?
Forumlo imam napisano
(=IF(C7="";"";VLOOKUP(C7;BAZA_Artikli!$C$5:$E$44;2))
ComboBox in Vlookup funcija
Hm... tole kar opisujete nima zveze z dolžino besedila (vsaj bi ne smelo imeti). Funkcija VLOOKUP vrne #VALUE! oz. #VREDN! (v SLO različici), če je tretji parameter manjši od 1. Toda v vašem primeru je ta parameter enak 2 in zatorej na vem kako vam lahko funkcija VLOOKUP vrne napako #VALUE!?
Boste morali povedati več. Podajte kakšen primer podatkov - primer, ko dela in ko ne dela...
Moje mnenje vseeno je, da vam funkcija vrača #N/A??
Boste morali povedati več. Podajte kakšen primer podatkov - primer, ko dela in ko ne dela...
Moje mnenje vseeno je, da vam funkcija vrača #N/A??
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator
Primer,
na listu1 v celici C6 imam nastavljeno (Data validation -->List-->source(=C5:C44) - tako imam na izbiro v tej celici combobox, kjer zbiram opis artiklov.
na listu1 v celici D6 imam vpisano =IF(C6="";"";VLOOKUP(C6;List2!$C$5:$E$44;2)) - tako mi povleče podatek iz Lista2 v List1, ko izberem v C6 artikel in isto naprej za E6 kjer mi izpiše ceno. Vse deluje OK!
Problem se pojavi, ko v celici C6 (kjer je combobox) izberem opis izdelka ko je v celici besedilo dolgo več vrstic (cca. 10vrstic). V celici C6 se pravilno izpiše opis artikla, v D6(enota) in E6(cena) pa mi vrne vrednost (#VALUE!), če opis na Listu2 skrajšam dela OK!
Zakaj?
[/img]
na listu1 v celici C6 imam nastavljeno (Data validation -->List-->source(=C5:C44) - tako imam na izbiro v tej celici combobox, kjer zbiram opis artiklov.
na listu1 v celici D6 imam vpisano =IF(C6="";"";VLOOKUP(C6;List2!$C$5:$E$44;2)) - tako mi povleče podatek iz Lista2 v List1, ko izberem v C6 artikel in isto naprej za E6 kjer mi izpiše ceno. Vse deluje OK!
Problem se pojavi, ko v celici C6 (kjer je combobox) izberem opis izdelka ko je v celici besedilo dolgo več vrstic (cca. 10vrstic). V celici C6 se pravilno izpiše opis artikla, v D6(enota) in E6(cena) pa mi vrne vrednost (#VALUE!), če opis na Listu2 skrajšam dela OK!
Zakaj?
[/img]
Ne vem zakaj vam je čudno? Lahko pa da se ne razumeva...
Torej, če vi napišete =X12 potem bo neka celica imela enako vrednost kot celica X12 (neglede kaj je v njej), če pa vi napišete funkcijo =VLOOKUP(X12,....) in se v celici X12 nahaja tekst v več vrsticah, pa vam funkcija VLOOKUP na bo vrnila iskanega rezultata!
Torej, če vi napišete =X12 potem bo neka celica imela enako vrednost kot celica X12 (neglede kaj je v njej), če pa vi napišete funkcijo =VLOOKUP(X12,....) in se v celici X12 nahaja tekst v več vrsticah, pa vam funkcija VLOOKUP na bo vrnila iskanega rezultata!
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator
Ne 
Toda moram vam prišepniti, da ni problem v Excelu temveč v vaši rešitvi
Vlookup je namenjen iskanju po šifrah - torej da iz ŠIFRE artikla najde njegov opis/ceno ipd.. in ne iz opisa...
Iskanje po opisu ne sme in ne more biti (v nobeni - še tako preprosti aplikaciji!) izvedeno preko funkcij ki iščejo natančne vrednosti! Saj tako uporabniki ne bodo nikoli našli ničesar. Zamislite si, da bi v Merkurju, ki ima vsaj 500.000 aktivnih artiklov iskali artikle po nazivih z natančnimi opisi vrednostmi
:):)
Tipičen opis artikla obsega 120 znakov in vi pričakujete, da bo nekdo, da bi našel artikel, vtipkal 120 znakov z vsemi presledki in z vsemi znaki natanko tako kot so le ti zapisani v podatkovni bazi... Stavim vse svoje premoženje, da v tem primeru nebi nihče uporabljal računalnika... saj bi nikoli nič ne našel!
Pa še hiter nasvet kako bi morali torej vi kaj takšnega rešiti (nazive imate očitno v padajočem seznamu in uporabnik ga izbere iz seznama). Torej:
Toda moram vam prišepniti, da ni problem v Excelu temveč v vaši rešitvi
Iskanje po opisu ne sme in ne more biti (v nobeni - še tako preprosti aplikaciji!) izvedeno preko funkcij ki iščejo natančne vrednosti! Saj tako uporabniki ne bodo nikoli našli ničesar. Zamislite si, da bi v Merkurju, ki ima vsaj 500.000 aktivnih artiklov iskali artikle po nazivih z natančnimi opisi vrednostmi
Tipičen opis artikla obsega 120 znakov in vi pričakujete, da bo nekdo, da bi našel artikel, vtipkal 120 znakov z vsemi presledki in z vsemi znaki natanko tako kot so le ti zapisani v podatkovni bazi... Stavim vse svoje premoženje, da v tem primeru nebi nihče uporabljal računalnika... saj bi nikoli nič ne našel!
Pa še hiter nasvet kako bi morali torej vi kaj takšnega rešiti (nazive imate očitno v padajočem seznamu in uporabnik ga izbere iz seznama). Torej:
- Seznam napolnite z nazivi artiklov.
- V pomnilniku (ali kje skritega) imate še en seznam, ki ima na istih mestih kot prvi seznam nazive, zapisane ŠIFRE artiklov
- Ko uporabnik iz prvega seznama izbere artikel vi iz drugega seznama preberete ŠIFRO artikla in nadalje iščete po šifri artikla
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator