[ srba11 @ 21.07.2012. 19:03 ] @
Pozz
Na koji nacin mogu da prekopiram podatke iz vise listova (sheet) na jedan zadnji sheet? U pitanju je puuuuunooo listova. Dole sam u primeru naveo: Podaci iz 1. i 2 lista su u 3 listu.
Unapred hvala.

SHEET 1
rb ime prezime pol
1 Ilic Goran M
2 Peric Igor M
3 Maric Ivana Z


SHEET 2
rb ime prezime pol
1 Micic Darko
2 Savic Jelena Z


SHEET 3: Ukupni pregled
rb ime prezime pol
1 Ilic Goran M
2 Peric Igor M
3 Maric Ivana Z
4 Micic Darko
5 Savic Jelena Z



[ FOX028 @ 21.07.2012. 21:02 ] @
Ja sam to resio pomocu makroa, mislim da je tako najjednostavnije. U prilogu ti je primer.
[ srba11 @ 22.07.2012. 08:29 ] @
Najpre bih da ti se zahvalim, puno si mi pomogao, radi sve kako dolikuje.
Sad gledam, ovo je kod u makrou sto si uradio, a to mi nije jaca strana.
Kako bih to mogao da uradim preko formula?
[ FOX028 @ 22.07.2012. 08:59 ] @
Preko formula mislim da je tesko izvodljivo, a i ako jeste slozenije je za razliku od makroa. Ako je forma na svim Sheet-ovima ista onda ce moj kod funkcionisati bez ikakvog prepravljanja. Evo ukratko kako bi ga mogao ubaciti kod sebe.

Code:
Private Sub btnKopiraj()
Dim Aktivni As String
Dim List As Variant
Dim i As Integer
Dim j As Integer
j = 1

Aktivni = ActiveSheet.Name

For Each List In Worksheets
    If List.Name <> Aktivni Then
        i = 2
        Do Until IsEmpty(List.Cells(i, 1))
            j = j + 1
            Sheets(Aktivni).Cells(j, 1) = j - 1
            Sheets(Aktivni).Cells(j, 2) = List.Cells(i, 2)
            Sheets(Aktivni).Cells(j, 3) = List.Cells(i, 3)
            Sheets(Aktivni).Cells(j, 4) = List.Cells(i, 4)
            i = i + 1
        Loop
    End If
Next
End Sub


1. Kada otvoris svoj Excel fajl otvori Sheet u kome zelis da ti sve bude iskopirano.
1. Otvori VBA editor (Alt+F11).
2. Dupli klik na Sheet u kome zelis da ti bude koirano (lista na levoj strani u VBA editoru).
3. Iskopiraj ovaj gore kod.
4. Mozes kliknuti na zelenu strelicu ili stisnuti taster F5.

NAPOMENA: Ovo sve prvo probaj na nekoj rezervnoj kopiji, nemoj na originalnom fajlu.

Ako ne uspes mozes okaciti svoj fajl pa da ti ubacim ovaj kod.
[ srba11 @ 22.07.2012. 09:33 ] @
Zahvaljujem na dodatnom pojasnjenju, radi sve kako treba jos od prvog puta kad si mi resio problem.
Ako nesto zapne upitacu.
Pozdrav i ziv bio.
[ ib.kroki @ 22.07.2012. 22:41 ] @
@FOX028

SAVRŠENO!!!
Koristiće mi, pa i ja da ti se zahvalim.

Ne poznajem VBA, to je za mene špansko selo, pa ako može pomoć.
1. Šta se u kodu menja za više ili manje kolona koje želimo kopirati?
2. Mogu li se kopirati samo dve kolone koje nisu jedna do druge, npr. B i D kolone?
[ FOX028 @ 22.07.2012. 22:59 ] @
Citat:
ib.kroki:
1. Šta se u kodu menja za više ili manje kolona koje želimo kopirati?
2. Mogu li se kopirati samo dve kolone koje nisu jedna do druge, npr. B i D kolone?


U ovom delu koda svaki red oznacava jednu kolonu, kod sa leve strane jednakosti predstavlja Sheet i celije u kojima se vrsi kopiranje, a kod sa desne strane jednakosti predstavlja Sheet i celije iz kojih se kopiraju podaci (2,3 i 4 su kolone u odgovarajucim Sheet-ovima), pa ako hoces B i D kolonu upisaces njihove redne brojeve 2 i 4

Code:
Sheets(Aktivni).Cells(j, 1) = j - 1
Sheets(Aktivni).Cells(j, 2) = List.Cells(i, 2)
Sheets(Aktivni).Cells(j, 3) = List.Cells(i, 3)
Sheets(Aktivni).Cells(j, 4) = List.Cells(i, 4)


Ako negde zapne okaci fajl pa da prepravimo kod kako je tebi potrebno.

[ ib.kroki @ 22.07.2012. 23:11 ] @
Citat:
FOX028:
Ako negde zapne okaci fajl pa da prepravimo kod kako je tebi potrebno.



Trenutno nemam potrebu za ovim kopiranje, ali sam imao do sada i mučio sam se.
Pokušaću da shvatim ovo, malo ću se igrati pa ako zapne pitaću.

Ko pita ne skita ...
[ ib.kroki @ 22.07.2012. 23:35 ] @
Uspeo sam da:
- dodam još jednu kolonu i nju da kopiram,
- kopiram samo dve kolone (drugu i četvrtu),
- kopiram drugu kolonu u četvrtu, a četvrtu u drugu.


Ne uspevam da iskopiram četvrtu kolonu u drug, a drugu u šestu?



EDIT:
Uspeo sam, do mene je greška ...
Permutovao sam levu i desnu stranu!

HVALA JOŠ JEDNOM!
[ mikoni @ 05.07.2015. 10:53 ] @
Milsim da imam sličan problem, pa da ne otvaram novu temu.

Potrebno je da iz jednog ili više radnih listova ( u ovom slučaju iz sheet1 u sheet2 ) prebace podaci izabranih kolona ( uslov je sadržan u prvom redu sheet2 ) - ovo bez copy/paste.
Probao sam razne kombinacije sa funkcijama vlookup, index i match, a o VB nisam ni razmišljao jer sam daleko od toga.

Pozdrav,
Mikoni
[ pera68 @ 05.07.2015. 20:14 ] @
Koliko sam shvatio problem ovde ne treba koristiti VBA kod već ugneždene formule (pogledati prilog).
[ mikoni @ 06.07.2015. 16:47 ] @
Pre nekoliko trenutaka sam probao i sve radi.
Hvala na velikoj pomoći.

Pozdrav,
Mikoni

P.S. meni je nedostalo '+1' iz match funkcije, bez pomoći ništa.
[ mikoni @ 14.08.2015. 13:23 ] @
Ovo je novi problem, doduše nadovezuje se na prethodni.
Kako iz niza A7:A166 ( sheet Kl_05 ) izvući pojedine objekte ( Obj_1 …. Obj_160 ) i smestiti u kolonu od A7 pa nadalje odgovarajućeg sheet-a, od Klass_1 do Klass_5 po kriterijumu iz niza B7:B166 ( sheet Kl_05 ).
Pozdrav,
Mikoni

[ mikoni @ 17.08.2015. 18:27 ] @
Na malo ’pešački’ način, u dva koraka, rešio sam problem, a pošto nije uobičajen i ovakvo rešenje bi moglo nekome da bude od koristi.
U prvom koraku sam iz niza od 160 izvučeni su pripadajući objekti za svaku klasu.
U drugom koraku sam iskoristio Ivekovo rešenje za jedan od mojih ranijih problema. Hvala Iveku i ovog puta.
Pozdrav,
Mikoni