Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

[Excel] funkcija za trazenje poslednje vrednosti u koloni

[es] :: Office :: Excel :: [Excel] funkcija za trazenje poslednje vrednosti u koloni

[ Pregleda: 4908 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

anakin14

Član broj: 73683
Poruke: 862
*.dynamic.sbb.co.yu.



+136 Profil

icon [Excel] funkcija za trazenje poslednje vrednosti u koloni20.08.2007. u 11:47 - pre 202 meseci
potrebna mi je ovakva funkcijakoja vraca poslednju vrednost koja u koloni a ispod te vrednosti su prazne celije

probao sam da napravim ali nece da radi, cak i pri startovanju blokira program, verovatno je loop los
Code:

Function stanje(cell As Range)
Do
If IsEmpty(cell.Offset(1, 0)) = False Then
cell = cell.Offset(1, 0)
End If
Loop Until IsEmpty(cell.Offset(1, 0)) = True
stanje = cell.Value
End Function

 
Odgovor na temu

3okc
Χoᴘᴦoѡ

Moderator
Član broj: 811
Poruke: 1319

Jabber: 3okc@elitesecurity.org


+116 Profil

icon Re: [Excel] funkcija za trazenje poslednje vrednosti u koloni20.08.2007. u 18:51 - pre 202 meseci
1) Pogrešio si u deklaraciji funkcije; nisi naveo tip koji f-ja vraća.

2) Pogrešio si u deklaraciji objektne promenljive cell; budući objekat, postavljanje vrednosti se vrši naredbom SET.

Izmenjena, f-ja bi mogla da izgleda ovako:
Code:

Function stanje(cell As Range) As String

    Do
        If IsEmpty(cell.Offset(1, 0)) = False _
            Then Set cell = cell.Offset(1, 0)
    Loop Until IsEmpty(cell.Offset(1, 0)) = True
    stanje = cell.Address
End Function

Izmenio sam ti poslednji red tako da se vraća ADRESA (umesto vrednosti), tako da će ti trebati kombinacija sa f-jom INDIRECT na mestu gde ovo računaš; ovako nekako:
Code:

=INDIRECT(stanje(D8))

To, za slučaj da ti se javljaju mešano brojevi sa tekstom pa da ne dolazi do konverzije.
Have you found helpful examples, solutions or ideas-in-work, please consider the
following:
• Citation of *actual page* you are going to using is welcome.
• Have you saw "Value Added" examples you are going to incorporate to your
profitable blog, daily job or any money making venture: How about online donation?
↗Ana & Vlade Divac Foundation
Hvala!
 
Odgovor na temu

anakin14

Član broj: 73683
Poruke: 862
*.dynamic.sbb.co.yu.



+136 Profil

icon Re: [Excel] funkcija za trazenje poslednje vrednosti u koloni20.08.2007. u 22:05 - pre 202 meseci
hvala puno
izgleda da je roblem bio samo u set comandi
Code:

Function stanje(cell As Range)
Do
If IsEmpty(cell.Offset(1, 0)) = False Then
Set cell = cell.Offset(1, 0)
End If
Loop Until IsEmpty(cell.Offset(1, 0)) = True
stanje = cell.Value
End Function


ovakav cod radi savrseno...
dok ovaj ne radi
Code:

Function stanje(cell As Range) as string
Do
If IsEmpty(cell.Offset(1, 0)) = False Then
Set cell = cell.Offset(1, 0)
End If
Loop Until IsEmpty(cell.Offset(1, 0)) = True
stanje = cell.adress
End Function

u kombinaciji sa indirect(stanje(r1)) vraca #value
 
Odgovor na temu

anakin14

Član broj: 73683
Poruke: 862
*.dynamic.sbb.co.yu.



+136 Profil

icon Re: [Excel] funkcija za trazenje poslednje vrednosti u koloni23.08.2007. u 06:43 - pre 202 meseci
funkcija mi dobro radi,ali imam problem sto ne azurira podatke kada ih promenim automatski, nego stalno je ponovo kucam a to je ko da nemam funkciju nego sve radim rucno... da li neko zna sta da dodam u kod da bi automatski azurirala podatke???
hvala.
 
Odgovor na temu

Jpeca
Predrag Jovanović
poslovni analitičar
Gowi
Pančevo

Moderator
Član broj: 25683
Poruke: 2268
212.200.27.*

Sajt: www.gowi.rs


+109 Profil

icon Re: [Excel] funkcija za trazenje poslednje vrednosti u koloni23.08.2007. u 08:47 - pre 202 meseci
Pretpostavljam da je problem sa ažuriranjem je posledica toga što kao argument funkcije zadaješ samo prvu ćeliju kolone. Funkcija će se u tom slučaju pokrenuti kad ažuriraš tu ćeliju, a neće ukoliko ažuriraš ostale ćelije u koloni - jer Excel nije svestan zavisnosti unutar koda, nego samo parametara koje se u funkciji prenose.
Rešenje je da kao parametar preneseš celu kolonu, pa onda u kodu da od cele kolone izdvojiš prvu ćeliju i dalje je kod isti
Code:

Function stanje(rng As Range) As String
Dim cell As Range
Set cell = rng.Resize(1, 1)
Do
  If IsEmpty(cell.Offset(1, 0)) = False Then
     Set cell = cell.Offset(1, 0)
  End If
Loop Until IsEmpty(cell.Offset(1, 0)) = True
stanje = cell.Value
End Function

Funkciju sada pozivaš sa npr. stanje(A:A) - za poslednju popunjenu ćeliju u koloni A.

Optimalnije rešenje je bez ekplicitnog korišćenja petlje, nego koristeći postojeću metodu End opsega koja određuje poslednju popunjenu ćeliju opsegu u zadatom pravcu.
Code:

Function stanje1(rng As Range) As Variant
   stanje1 = rng.Resize(1, 1).End(xlDown).Value
End Function

Nije to loše Rembrante, samo što ne bi dodao još malo boje?
 
Odgovor na temu

3okc
Χoᴘᴦoѡ

Moderator
Član broj: 811
Poruke: 1319

Jabber: 3okc@elitesecurity.org


+116 Profil

icon Re: [Excel] funkcija za trazenje poslednje vrednosti u koloni23.08.2007. u 09:46 - pre 202 meseci
Citat:
anakin14ovakav cod radi savrseno...

Znači, našao si mu manu. Sve to o čemu pišeš primetio sam i kod mene dok sam testirao f-ju; zaista, iz nekog razloga neće da očita vrednost, čak ni posle F9, nego svaki put moraš da ulaziš u ćeliju.

Vidiš, varijanta sa vraćanjem adrese nema tih problema. (Za sve postoji lakši i teži način pa tako i za učenje.)

Sad sam primetio i Pecin post, nisam probao sa izmenom prosleđene vrednosti ali f-ja (mora da) radi nezavisno od toga da li je to baš prva ćelija; može biti bilo koja u koloni, brojanje počinje od nje. Vidiš, moglo bi se doraditi tako da možeš bez problema proslediti i opsege a da ne dođe do greške, tako što bi se uzimao argument ActvieCell objekta Range koji se prosleđuje.
Have you found helpful examples, solutions or ideas-in-work, please consider the
following:
• Citation of *actual page* you are going to using is welcome.
• Have you saw "Value Added" examples you are going to incorporate to your
profitable blog, daily job or any money making venture: How about online donation?
↗Ana & Vlade Divac Foundation
Hvala!
 
Odgovor na temu

3okc
Χoᴘᴦoѡ

Moderator
Član broj: 811
Poruke: 1319

Jabber: 3okc@elitesecurity.org


+116 Profil

icon Re: [Excel] funkcija za trazenje poslednje vrednosti u koloni23.08.2007. u 10:18 - pre 202 meseci
Dakle, pošto sam sad video i Pecin post malo da dodam još koju.

1) U primeru koji si naveo sa korišćenjem čitave kolone, početna vrednost je "prva ćelija kolone", tj prvi red što, možda jeste često ali ne mora da važi. U slučaju kada jeste tako, radi, ali čim umetneš prazne redove iznad zaglavlja tabele dobićeš grešku, tj neželjen rezultat.

2) Al' ga zakomplikova sa onom petljom, izlazak s vrha isto radi pos'o:
Code:
Do While IsEmpty(cell.Offset(1, 0)) = False
     Set cell = cell.Offset(1, 0)
Loop

3) Kao što već rekoh, f-ja može da vrati adresu i tada INDIRECT očitava vrednost. Ovo radi.

Have you found helpful examples, solutions or ideas-in-work, please consider the
following:
• Citation of *actual page* you are going to using is welcome.
• Have you saw "Value Added" examples you are going to incorporate to your
profitable blog, daily job or any money making venture: How about online donation?
↗Ana & Vlade Divac Foundation
Hvala!
 
Odgovor na temu

anakin14

Član broj: 73683
Poruke: 862
*.dynamic.sbb.co.yu.



+136 Profil

icon Re: [Excel] funkcija za trazenje poslednje vrednosti u koloni30.08.2007. u 07:58 - pre 202 meseci
hvala na svim predlozima, ali u nijednom slucaju fukcija ne azurura na vreme, al;i nema veze napravio sam prost makro koji ponovo ukucava funkciju u polje i to je to@ :) .
 
Odgovor na temu

vladeling
Vladan Stepanovic
Lazarevac

Član broj: 73017
Poruke: 9
80.93.232.*

ICQ: 239


Profil

icon Re: [Excel] funkcija za trazenje poslednje vrednosti u koloni26.01.2014. u 07:42 - pre 124 meseci
Potrebna mi je pomoc oko neke tabele... Probao sam sa nekoliko IF funkcija, ali nesto nije dobro pa ne dobijem trazeni rezultat...
Potrebno je da u koloni V12 pise rezultat V11-U12. Pri tom, ako je U12 prazno, nece pisati nista (taj deo sam resio), ALI, osim toga, sledece sto treba da ispituje jeste da li ima podatke u V11, ako nema da uzme podatak iz V10(umesto iz V11), ako nema ni tu onda iz V9(umesto V10 odnosno V11). U koloni V su vrednosti neke za dane u nedelji, pa hocu ako je vikend da ne pise nista, ako je radni dan da ima vrednosti... Nadam se da ste razumeli i da mi neko moze pomoci.
Hvala
 
Odgovor na temu

3okc
Χoᴘᴦoѡ

Moderator
Član broj: 811
Poruke: 1319

Jabber: 3okc@elitesecurity.org


+116 Profil

icon Re: [Excel] funkcija za trazenje poslednje vrednosti u koloni26.01.2014. u 09:41 - pre 124 meseci
Citat:
anakin14:
hvala na svim predlozima, ali u nijednom slucaju fukcija ne azurura na vreme


Da bi se vrednost osvežavala na svaku izmenu, dodaj ovaj red:
Code:
Application.Volatile

Have you found helpful examples, solutions or ideas-in-work, please consider the
following:
• Citation of *actual page* you are going to using is welcome.
• Have you saw "Value Added" examples you are going to incorporate to your
profitable blog, daily job or any money making venture: How about online donation?
↗Ana & Vlade Divac Foundation
Hvala!
 
Odgovor na temu

3okc
Χoᴘᴦoѡ

Moderator
Član broj: 811
Poruke: 1319

Jabber: 3okc@elitesecurity.org


+116 Profil

icon Re: [Excel] funkcija za trazenje poslednje vrednosti u koloni26.01.2014. u 09:48 - pre 124 meseci
Citat:
vladeling:
...Potrebno je da u koloni V12 pise rezultat V11-U12. Pri tom, ako je U12 prazno, nece pisati nista (taj deo sam resio), ALI, osim toga, sledece sto treba da ispituje jeste da li ima podatke u V11, ako nema da uzme podatak iz V10(umesto iz V11), ako nema ni tu..


Mislim da se to jednostavnije kaže 'poslednje-upisana' vrednost.

Iz nejasnog pitanja čini se da imaš dve kolone i da tražiš poslednju vrednost iz U-kolone a ne iz V kao što sam podvukao.

Ili možda računaš razliku dve poslednje upisane vrednosti, po jedna iz obe kolone?
Have you found helpful examples, solutions or ideas-in-work, please consider the
following:
• Citation of *actual page* you are going to using is welcome.
• Have you saw "Value Added" examples you are going to incorporate to your
profitable blog, daily job or any money making venture: How about online donation?
↗Ana & Vlade Divac Foundation
Hvala!
 
Odgovor na temu

vladeling
Vladan Stepanovic
Lazarevac

Član broj: 73017
Poruke: 9
*.adsl-a-11.sezampro.rs.

ICQ: 239


Profil

icon Re: [Excel] funkcija za trazenje poslednje vrednosti u koloni26.01.2014. u 11:33 - pre 124 meseci
Ok, prihvatam da je delimicno nejasno pitanje, pa da pojasnim...

U celiji V12 treba da racuna V11-U12, u celiji V13 treba da racuna V12-U13... Pri tome, ako je celija U u tom redu prazna, automatski i rezultat ostaje prazan:
=IF(U12="";"";V11-U12)
Medjutim, posto je kolona V podaci neki za svaki dan u mesecu, pa obzirom da se subotom i nedeljom ne radi, tada se i ne upisuju podaci... Hocu da mi, ako postoji celija U12 upise rezultat u V12 koji je jednak razlici poslednje upisane celije u koloni V pre V12, i celije U12.
Eto, nadam se da sam sada jasniji bio

Hvala na pomoci.
 
Odgovor na temu

3okc
Χoᴘᴦoѡ

Moderator
Član broj: 811
Poruke: 1319

Jabber: 3okc@elitesecurity.org


+116 Profil

icon Re: [Excel] funkcija za trazenje poslednje vrednosti u koloni26.01.2014. u 12:01 - pre 124 meseci
Probaj sa ovim:
Code:
=IF(U12="";"";V11-LOOKUP(2;1/U10:U12;U10:U12))

Have you found helpful examples, solutions or ideas-in-work, please consider the
following:
• Citation of *actual page* you are going to using is welcome.
• Have you saw "Value Added" examples you are going to incorporate to your
profitable blog, daily job or any money making venture: How about online donation?
↗Ana & Vlade Divac Foundation
Hvala!
 
Odgovor na temu

vladeling
Vladan Stepanovic
Lazarevac

Član broj: 73017
Poruke: 9
80.93.232.*

ICQ: 239


Profil

icon Re: [Excel] funkcija za trazenje poslednje vrednosti u koloni27.01.2014. u 16:30 - pre 124 meseci
@3okc

Hvala na pomoci, nije mi bas tako trebalo, trebalo mi je da trazim poslednje upisanu celiju u koloni V(po vertikali), ali uz tvoju formulu sam dosao do onog sto mi je bilo potrebno.
Jos jednom hvala!
Pozdrav.

P.S. Sad vidim da si i ti isto bio napisao, samo si zamenio kolone, umesto V stavio U...Uglavnom, ovo je trazena formula(stavio vise celija da trazi, zbog drzavnih praznika, ako se ne radi tada... ):

Code:
=IF(U19="";"";U19+LOOKUP(2;1/AA14:AA18;AA14:AA18))
 
Odgovor na temu

[es] :: Office :: Excel :: [Excel] funkcija za trazenje poslednje vrednosti u koloni

[ Pregleda: 4908 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.