» »

excell formule

excell formule

turist1 ::

mi lahko nekdo pomaga, ker nisem ravno mojster... :/

imama tabelo v njej je 1000 uporabnikov, pri vskem uporabniku je nasteto orodje(v enem polju je npr 1 orodje ali 6)
1
miha kladiva, žeblji, macola..)
mojca glavnik

potem je tu druga tabela kjer so regije in potrebna orodja v vsaki regiji.
2
gorenjska kladivo, macola
štajerska kladivo

itd...

3
tretja tabela kjer so regije in uporabniki, sedaj moram preveriti uporabnike iz prve tabele ali imajo potrebna orodja, tako ko od njih zaheva druga tabela (v tretji tabeli so pa uporabniki z regijami napisani)...

moral bi puporabnike i prve abele katere orodja imajo, in primerjati z drugo tabelo

Blinder ::

a to je ms excel? Niti ne veš kako se pravilno napiše? :O
99.991% of over-25 population has tried kissing.
If you're one of the 0.009% who hasn't, copy & paste this in your Signature.
Intel i3-12100f gtx 1080 Pismo smo stari v bozjo mater. Recesija generacija

turist1 ::

da ms. excel, sem se zatipkal...

sem želel uploadat datoteko a nikjer ne sprejmejo xls datotek :/

spodaj je primer, lepo bi prosil za pomoč, ker ne vem kje začeti... :/

torej konkreten primer:
imam seznam uporabnikov, ki se bodo udeležili določenih športov, to je ena tabela.
v drugi tabeli imam seznam športov in potrebne opreme za ta šport.
v tretji tabeli pa imam seznam uporabnikov s trenutnim stanjem uporabnikov in opremo, ki jo imajo. preveriti moram ali uporabniki trenutno imajo vso potrebno opremo za željeni šport:

1.) tabela:

OBVEZA
Uporabnik Šport
Miha N. Košarka
Mojca M. Potapljanje
Andreja Z. Tenis
Špela T. Lokostrelstvo
Anže B. Plezanje
Jure K. Jadranje
Miha R. Golf
Mateja N. Streljanje
Andrej B. Streljanje
Neža K. Smučanje

2.) tabela

trenuno stanje
Uporabnik Oprema
Mojca M. potapljaška oprema, izpit, čoln,
Anton B. oblačilo
Mateja N. strelno orožje, očala,
Anže B. Vrv, rokavice, oblačilo,
David K. oblačilo
Matej T. oblačilo
Andrej B. očala, rokavice,
Jure K. čoln, izpit,
Neža K. Smuči, oblačilo,

3.tabela

Šport Oprema
Lokostrelstvo lok, puščice, obutev, oblačilo, očala,
Plezanje Vrv, rokavice, obutev, oblačilo,
Smučanje Smuči, oblačilo, očala,
Streljanje strelno orožje, očala, rokavice,
Ribolov Ribiška oprema, čoln, vaba,
Košarka Žoga, obutev,
Potapljanje potapljaška oprema, izpit, čoln,
Jadranje čoln, oblačila, izpit,


če kdo obvlada se mu najlepše zahvaljujem :)

StratOS ::

Ne znaš spremeniti ime (končnico) datoteke ali jo zazipati ?
"Multitasking - ability to f##k up several things at once."
"It works better if you plug it in."
"The one who is digging the hole for the other to fall in is allready in it."

prtenjam ::

To je šolska naloga ali kaj drugega?
Matjaž Prtenjak
https://mnet.si

ZePe ::

Torej v prvi tabeli napišeš nekaj takega:

IF(VLOOKUP(Uporabnik; Tabela2; 2; FALSE) = VLOOKUP(Sport; Tabela3; 2; FALSE) ; "DA" ; "NE")

Namesto Uporabnik napišeš konkretno celico (npr. A2), namesto Tabela2 dejanski obseg podatkov (npr. List2!$A$1:$B$10). Enako za drugi VLOOKUP.

Upam, da bo šlo, sicer piši.

Lep pozdrav,
P.J.
Moj blog: http://office.blog.siol.net in http://www.finance.si/blog.php?id=25

energetik ::

Problematično je, če imaš vso opremo v eni celici, ločeno samo z vejicami in presledki. Če pa imaš vsako opremo v svoji celici, potem bo verjetno šlo kot je napisal ZePe.

ZePe ::

Pravzaprav ravno obratno. Način, ki sem ga podal zgolj primerja vsebino dveh celic (torej besedilo v njih). Če pa bi bila oprema našteta vsaka v svoji celici, bi si bili treba pomagati s kako NEXT funkcijo in nekako odsimulirati zanko z matrično formulo.
Moj blog: http://office.blog.siol.net in http://www.finance.si/blog.php?id=25

energetik ::

Ja, samo kako bo primerjal če ima uporabnik vso opremo za določen šport + še kakšno dodatno. V tem primeru vsebini celic ne bosta enaki, čeprav ima vso potrebno opremo.

ZePe ::

@energetik: v tem primeru se bo težko ognil uporabi VBA-ja.

Nekako tako:

  • če gre za besedilo ločeno z vejico, najprej klic funkcije SPLIT

  • zanka po vseh elementih opreme in s funkcijo INSTR iskanje, ali je ta del opreme v naboru opreme posameznika



Morda objavim kodo za "uporabniško določeno funkcijo" za ta primer. Nič pretresljivega.
Moj blog: http://office.blog.siol.net in http://www.finance.si/blog.php?id=25

turist1 ::

pozdrav vsem,

mogoč bo lažje če posredujem v excelu, sem spremenil končnico v .jpg in uploadal na naslov:
http://www.mediafire.com/?q79oytmzc25mh...

(potrebno je iz .jpg spremeniti v .xls)

hvala ZePe :) in tudi ostalim za čas in pomoč :) ne vem kako bi to naredil.... :/

milc ::

Na tvoj excel v jpg-ju:
Tole skopiraj v F4, potem pa F4 kopiraj dol do F13.
=IF(ISERROR(SEARCH(VLOOKUP(E4;$A$15:$B$22;2;FALSE);VLOOKUP($D4;$A$4:$B$12;2;FALSE);1));"Ne";IF(0<SEARCH(VLOOKUP(E4;$A$15:$B$22;2;FALSE);VLOOKUP($D4;$A$4:$B$12;2;FALSE);1);"Da"))

turist1 ::

o hvala milc :)

a to mi le izpise ali trentno ima potrebno opremo glede na zeljeni šport. se da prilagoditi formulo tako da izpise kaj manjka? :/ vem da velik zahtevam.... :)
HVALAAA :)

hmm sem opazil da če ni po vvrsti urejena oprema prikaže narobe :/
npr.: če piše : smuči, oblačilo, očala, bo pravilno pokazalo, če pa : smuči, očala, oblačilo, bo pa narobe prikazalo :/

hvala resnično..

Zgodovina sprememb…

  • spremenil: turist1 ()

milc ::

Aja, VLOOKUP hoče imeti sortirane tabele, če uporabljaš range lookup in rabiš ekzaktne rešitve.

Posredovana rešitev ti izpiše natančno to kar si napisal, da bi rad imel.

Če hočeš imeti preverjanje posameznih elementov (opreme) v neodvisnem vrstnem redu, se formule precej zakomplicirajo. Priznam, da nimam ideje kako napisat formulo v eni vrstici. Tole bi bil primer za VB.
Sicer pa take naloge niso glih za excel po mojem mnenju, jaz ko naletim na tako stvar raje uporabim perl.

ZePe ::

Torej, če želimo preveriti, ali se vsak posamezen kos opreme, potrebne za določen šport nahaja pri vsakem posameznem uporabniku, je treba - kot sem že rekel - najprej vsebino razbiti na posamezne člene in za vsak člen posebej preveriti, ali je vsebovan pri posamezni osebi.

Torej se v VBA-ju napiše funkcija, ki to stori... in gre nekako tako:
Public Function UstrezaZaSport( _
  aOseba As String, _
  aSport As String, _
  ObsegOseba As Range, _
  ObsegSport As Range _
) As Boolean
On Error GoTo ErrorHandler

  Dim aStanje As String
  Dim aBuff() As String
  Dim i As Integer
  
  If aOseba <> vbNullString Then
    If aSport <> vbNullString Then
      aBuff = Split(Application.VLookup(aSport, ObsegSport, 2, False), ",")
      aStanje = CStr(Application.VLookup(aOseba, ObsegOseba, 2, False))
      For i = LBound(aBuff) To UBound(aBuff)
        If Trim(aBuff(i)) <> vbNullString Then
          If InStr(1, aStanje, Trim(aBuff(i))) = 0 Then Exit For
        End If
      Next i
      UstrezaZaSport = (i > UBound(aBuff))
    End If
  End If
  
FinalHandler:
  Exit Function
  
ErrorHandler:
  Err.Clear
  Resume FinalHandler
  
End Function


Funkcija torej dvakrat pokliče funkcijo VLOOKUP. Prvič zato, da dobi opremo potrebno za izbrani šport in drugič za to, da dobi opremo pri določenem uporabniku. Opremo za določen šport razdelimo na posamezne člene s pomočjo funkcije SPLIT in sicer tako, da kot ločilo navedemo vejico.

Nato se v zanki zavrtimo čez vse člene (vsak kos opreme potreben za določen šport) in preverimo, ali se ta nahaja v seznamu opreme uporabnika. S funkcijo TRIM se znebimo morebitnih odvečnih presledkov. Če enega izmed potrebnih kosov opreme ni v uporabnikovem seznamu, lahko izstopimo iz zanke, saj to pomeni, da slednji ni ustrezno opremljen.

Na koncu preverimo, ali se je zanka odvrtela do konca. Če se je, je naš števec i za 1 večji od števila kosov potrebne opreme, kar pomeni, da je uporabnik opremljen z vso potrebno opremo, zato v tem (in zgolj v tem) primeru vrnemo rezultat True.

Sedaj je zgolj še treba v celico F4 v dotični nalogi vnesti formulo:
=UstrezaZaSport(D4;E4;$A$4:$B$12;$A$15:$B$22)

nato pa dvoklikniti na spodnji-desni vogal označevalnika izbrane celice, da se formula razmnoži po stolpcu navzdol in vaja je zaključena.

Srečno in več sreče prihodnjič,
P.J.
Moj blog: http://office.blog.siol.net in http://www.finance.si/blog.php?id=25

Zgodovina sprememb…

  • spremenil: ZePe ()

turist1 ::

ZePE CAR!!
hvala! :)
nevem zakaj a mi ni še uspelo pognati skripte v VB, berem tutoriale, skušam razumeti kodo, ki si jo napisal a ker sem res še začetnik, gre počasi.. :/
res ti hvala da si si vzel čas. Moram danes zadeve usposobiti...noč bo še dolga :)

turist1 ::

bi mi bil kdo pomagati z excellom?? verjetno se da z vlookup funkcijo urediti kar potrebujem a mi nikakor ne uspe..
nujno bi potreboval nekoga ki je res srokovnjak v tem...
PLAČAM!EUREUREUREUREUR!

turist1 ::

Danes bi zopet potreboval pomoč z excelom... :(

EUR plačam... EUR

ZePe ::

Poglej, ti bom poskusil razložiti VLOOKUP po kmečko:

Recimo da imaš na List1 eno tabelo, kjer je v stolpcu A zaporedna številka, nato v stolpcu B napisano Ime, v stolpcu C Priimek, v D-ju telefon in v E-ju email. Sedaj se zmisli 5 prijateljic in jih konkretno vpiši.

Sedaj greš na drugi list in v neko celico (npr. B1) vpišeš 3. V celici C1 pa želiš, da se ti prikaže telefonska številka prijateljice, ki ima zaporedno številko 3, torej kar si vnesel v B1.

Torej začne se tako: tisto, kar želim da bo poiskano je zapisano v B1, oz. v formuli:
=VLOOKUP(B1;...;...;...)


OK, sedaj Excel ve, kaj naj išče, ne ve pa kje naj išče. rekli smo 5 prijateljic... stolpci so pa od A do E. Torej je naša tabela od A1 do E5. To gre na drugo mesto v formuli:

=VLOOKUP(...;$A$1:$E$5;...;...)


Bodi pozoren, kako sem postavil znak $!!! OK, sedaj Excel ve, kaj naj išče in kje naj išče. Povedati mu je treba, vrednost katerega stolpca po vrsti naj vrne. Pri nama je telefonska v četrtem stolpcu, torej:
=VLOOKUP(...;...;4;...)


Na koncu mu poveš, ali naj se zadovolji s približkom. V najinem primeru nočeva nobenih približkov, zato mu to povemo:

=VLOOKUP(...;...;...;FALSE)


Vse skupaj sedaj zgleda tako:

=VLOOKUP(B1;List1!$A$1:$E$5;4;FALSE)


In se po slovensko prebere tako: Poišči v podatkih na List1 od A1 do E5 tisto vrstico, ki ima v prvem stolpcu to kar sem zapisal v B1 in mi povej, kaj je v četrtem stolpcu te vrstice.

Upam, da bo šlo.

LP, P.J.
Moj blog: http://office.blog.siol.net in http://www.finance.si/blog.php?id=25


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

excel pogojno oblikovanje

Oddelek: Pomoč in nasveti
141689 (1151) 3pier
»

Pomoč Excel

Oddelek: Programska oprema
136204 (5891) mk766321
»

excel help

Oddelek: Pomoč in nasveti
152136 (1901) klemenSLO
»

Excel Težava - fukncija

Oddelek: Pomoč in nasveti
202355 (2048) smetko
»

excell razvrščanje

Oddelek: Programska oprema
213891 (3535) rferrari

Več podobnih tem