Forum » Programska oprema » Excel if pomoč
Excel if pomoč
marco09 ::
Pozdravljeni.
V prvem stolpcu imam zapisano številčno okrajšavo, v drugem stolpcu vsebino
01 | Vsebina "lorem ipsum 01"
01 01 | Vsebina "lorem ipsum 01 01"
01 02 | Vsebina "lorem ipsum 01 02"
...
01 02 01 | Vsebina "lorem ipsum 01 02 01"
...
02 | Vsebina "lorem ipsum 02"
02 01| Vsebina "lorem ipsum 02 01"
...
V eni izmed vrstic se potem ročno vpisujejo številčne okrajšave - recimo
01 02 01
v celici spodaj pa bi se morala pojaviti vsebina tako iz celice 01, celice 01 02, kot celice 01 02 01
Torej nekaj takega
01 02 01
-------------------------------
Vsebina "lorem ipsum 01"
Vsebina "lorem ipsum 01 02"
Vsebina "lorem ipsum 01 02 01"
Kako zapisati formulo?
Hvala
V prvem stolpcu imam zapisano številčno okrajšavo, v drugem stolpcu vsebino
01 | Vsebina "lorem ipsum 01"
01 01 | Vsebina "lorem ipsum 01 01"
01 02 | Vsebina "lorem ipsum 01 02"
...
01 02 01 | Vsebina "lorem ipsum 01 02 01"
...
02 | Vsebina "lorem ipsum 02"
02 01| Vsebina "lorem ipsum 02 01"
...
V eni izmed vrstic se potem ročno vpisujejo številčne okrajšave - recimo
01 02 01
v celici spodaj pa bi se morala pojaviti vsebina tako iz celice 01, celice 01 02, kot celice 01 02 01
Torej nekaj takega
01 02 01
-------------------------------
Vsebina "lorem ipsum 01"
Vsebina "lorem ipsum 01 02"
Vsebina "lorem ipsum 01 02 01"
Kako zapisati formulo?
Hvala
alexa-lol ::
http://support.microsoft.com/kb/324861
=VLOOKUP
Parsanje stringa - da iz "01 02 03" dobiš ven "01", "01 02" in "01 02 03"
V celici E8 sem vpisal ta iskalni niz
Prva vrednost: =LEFT(E8; SEARCH(" ";E8;1))
Druga vrednost: =LEFT(E8; SEARCH(" ";E8;1) + LEN(LEFT(E8; SEARCH(" ";E8;1))))
Tretja vrednost: =LEFT(E8; SEARCH(" ";E8;1) + LEN(LEFT(E8; SEARCH(" ";E8;1) + LEN(LEFT(E8; SEARCH(" ";E8;1))))))
PS. alternativno lahko vmesne vrednost, tj. "01", "01 02", shranjuješ v neko celico. Če nočeš da se vidi daš recimo v XY100000.
=VLOOKUP
Parsanje stringa - da iz "01 02 03" dobiš ven "01", "01 02" in "01 02 03"
V celici E8 sem vpisal ta iskalni niz
Prva vrednost: =LEFT(E8; SEARCH(" ";E8;1))
Druga vrednost: =LEFT(E8; SEARCH(" ";E8;1) + LEN(LEFT(E8; SEARCH(" ";E8;1))))
Tretja vrednost: =LEFT(E8; SEARCH(" ";E8;1) + LEN(LEFT(E8; SEARCH(" ";E8;1) + LEN(LEFT(E8; SEARCH(" ";E8;1))))))
PS. alternativno lahko vmesne vrednost, tj. "01", "01 02", shranjuješ v neko celico. Če nočeš da se vidi daš recimo v XY100000.
Zgodovina sprememb…
- spremenil: alexa-lol ()
marco09 ::
Hvala, super to sem iskal.
Imam pa še 2 problema vseeno.
Sestavil sem tole formulo sedaj, ki načeloma dela:
="- "&VLOOKUP(LEFT(B33; SEARCH(" ";B33;1));$A$43:$B$230;2;FALSE) & CHAR(10)&"- " & VLOOKUP(LEFT(B33; SEARCH(" ";B33;1) + LEN(LEFT(B33; SEARCH(" ";B33;1))));$A$43:$B$230;2;FALSE) & CHAR(10)&"- " & VLOOKUP(LEFT(B33; SEARCH(" ";B33;1) + LEN(LEFT(B33; SEARCH(" ";B33;1) + LEN(LEFT(B33; SEARCH(" ";B33;1))))));$A$43:$B$230;2;FALSE)
Torej v treh vrsticah izpišem vrednosti.
Prvi problem je ta, da mora biti v celicah pri številčnih okrajšavah za recimo 01 02_ presledek, da formula dela,
drugi problem pa ta, da se nekatere številčne okrajšave končajo samo z dvema številkama - recimo
07 | Vrednost
07 01 | Vrednost
07 01 01 | Vrednost
07 02 | Vrednost
07 03 01 | Vrednost
....
Torej 07 02 nima tretje številčne okrajšave. Ko uporabim zgornjo formulo (ko torej vpišem 07 02), seveda javi napako, ker nima vrednosti iz tretjega dela formule.
Torej kako bi izpisal samo eno ali dve vrstici kot rezultat, če ni druge oz. tretje številčne okrajšave. Torej da bi se drugi oz. tretji del formule ignorirala.
Hvala
Imam pa še 2 problema vseeno.
Sestavil sem tole formulo sedaj, ki načeloma dela:
="- "&VLOOKUP(LEFT(B33; SEARCH(" ";B33;1));$A$43:$B$230;2;FALSE) & CHAR(10)&"- " & VLOOKUP(LEFT(B33; SEARCH(" ";B33;1) + LEN(LEFT(B33; SEARCH(" ";B33;1))));$A$43:$B$230;2;FALSE) & CHAR(10)&"- " & VLOOKUP(LEFT(B33; SEARCH(" ";B33;1) + LEN(LEFT(B33; SEARCH(" ";B33;1) + LEN(LEFT(B33; SEARCH(" ";B33;1))))));$A$43:$B$230;2;FALSE)
Torej v treh vrsticah izpišem vrednosti.
Prvi problem je ta, da mora biti v celicah pri številčnih okrajšavah za recimo 01 02_ presledek, da formula dela,
drugi problem pa ta, da se nekatere številčne okrajšave končajo samo z dvema številkama - recimo
07 | Vrednost
07 01 | Vrednost
07 01 01 | Vrednost
07 02 | Vrednost
07 03 01 | Vrednost
....
Torej 07 02 nima tretje številčne okrajšave. Ko uporabim zgornjo formulo (ko torej vpišem 07 02), seveda javi napako, ker nima vrednosti iz tretjega dela formule.
Torej kako bi izpisal samo eno ali dve vrstici kot rezultat, če ni druge oz. tretje številčne okrajšave. Torej da bi se drugi oz. tretji del formule ignorirala.
Hvala
alexa-lol ::
Prvega problema ne razumem...
Drugi..
=IF( ISERROR( ..VLOOKUP..) ; "Opis ne obstaja"; ..VLOOKUP.. )
Drugi..
=IF( ISERROR( ..VLOOKUP..) ; "Opis ne obstaja"; ..VLOOKUP.. )
marco09 ::
Formula dela le, če so za številčnimi okrajšavami presledki torej tako
01_
01_02_
(črtica spodaj predstavlja presledek)
za tretjo okrajšavo pa ni potreben presledek
torej je ok tako 01_02_03
Morda sem kaj spregledal pri formuli, ...
01_
01_02_
(črtica spodaj predstavlja presledek)
za tretjo okrajšavo pa ni potreben presledek
torej je ok tako 01_02_03
Morda sem kaj spregledal pri formuli, ...
alexa-lol ::
Aha,..
Prva vrednost: =LEFT(E8; SEARCH(" ";E8;1) - 1)
Druga vrednost: =LEFT(E8; SEARCH(" ";E8;1) + LEN(LEFT(E8; SEARCH(" ";E8;1))) - 1)
Tretja vrednost: =LEFT(E8; SEARCH(" ";E8;1) + LEN(LEFT(E8; SEARCH(" ";E8;1) + LEN(LEFT(E8; SEARCH(" ";E8;1))))) - 1)
Povej če dela
Prva vrednost: =LEFT(E8; SEARCH(" ";E8;1) - 1)
Druga vrednost: =LEFT(E8; SEARCH(" ";E8;1) + LEN(LEFT(E8; SEARCH(" ";E8;1))) - 1)
Tretja vrednost: =LEFT(E8; SEARCH(" ";E8;1) + LEN(LEFT(E8; SEARCH(" ";E8;1) + LEN(LEFT(E8; SEARCH(" ";E8;1))))) - 1)
Povej če dela
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Excel - kako ločiti ulico in številko?Oddelek: Programiranje | 1381 (1196) | 1Missy |
» | Latinski prevodOddelek: Loža | 6686 (4081) | Ziga Dolhar |
» | Nekaj mojih Web dizajnovOddelek: Izdelava spletišč | 1906 (1032) | Tody |
» | Excel-pomocOddelek: Programiranje | 2965 (2798) | RuN |