IZBORNIK HOME FORUM ACCESS 2003 EXCEL 2003 WORD 2003  .
   
   
HOME
FORUM Win Tips&Tricks
   
KAKO INSTALIRATI
WINDOWS XP ?
Kako instalirati Win XP sa USB STICKA
Kako instalirati WINDOWS 7 ?
Naučite za 15 minuta raditi u Windows XP
Naučite Internet Explorer i Outlook Express
za 15 minuta
Kako kreirati BOOT CD za instalaciju Win95
   
MS OFFICE 2003
MS OFFICE 2007
   
   
HOME NETWORK
tutorijal za mreže
Network Windows 7 - XP
   
ZANIMLJIVI LINKOVI
BROJEVNI SUSTAVI
(DEC, OKT, BIN, HEX )
CMD - Command Prompt
CISCO - CCNA tutoriali
VLSM and SUBNETTING
   
Tutorijali za phpBB forum
JAVASCRIPT
VISUAL BASIC 6.0
AUTOCAD 2007
 
.
MICROSOFT EXCEL 2007 - Copy data from column with criteria to another Sheet

Kako kopirati podatke u stupcu uz uvjet
(Kopiranje podataka uz uvjet u drugi radni list)




Kako kopirati podatke iz jednog stupca Radnog lista u drugi  Radni list  uz uvjet
(Copy excel data with criteria to a another Sheet)

Ako imate potrebu kopirati podatke (vrijednosti ili tekst) iz jednog stupca u drugi radni list uz određeni uvjet

Situacija je slijedeća:

Imamo dva radna lista (Sheets). Na radnom listu "Baza" imamo izvorne podatke u dva stupca. Popis studenata i njihova zaduženja. Također postoji radni list "Zaduzenja" u kojem želimo filtrirati (u stupcu A) koji je student što zadužio. Dakle uvjet nam je ime studenta. U odnosu na uvjet (Student) u ovom slučaju "Marko" na radnom listu "Zaduzenja" trebamo kao rezultat dobiti koje sve Artikle je Marko zadužio.


Ovaj problem možemo rješavati na više načina a ja ću prikazati dva načina.

PRVI NAČIN- KOPIRANJE PODATAKA IZ JEDNOG STUPCA NA DRUGI RADNI LIST UZ UVJET POMOĆU VBA MACRO KODA

Za ovaj prvi primjer iskoristit ćemo ispod navedeni MACRO NAREDBU (Macro code). Kako se umeće (insertira) Makronaredba u Excel datoteku, pogledajte na temi i proučite "Makronaredbe u Excelu" i kako se insertira Makronaredba u Excelu

U ovom primjeru pomoću Makronaredbe "uvjet" se obavezno postavlja u source code Macro-a i to velikim slovima. Dakle ovaj source code kopirajte u VBE u Excelu u Module1 (ALT+F11) .
NAPOMENA: U ovom kodu možete mijenjati dijelove koji su podebljani (bold)

--------------------

Sub Copy_anotherSheet()
Set rd = Sheets("Baza")
'postavlja izvorni Sheet kao "rd"
Set wd = Sheets("Zaduzenja")
'postavlja odredisni Sheet kao "wd"

For i = 1 To rd.Range("A65536").End(xlUp).Row
' postavlja zadnji red u stupcu AA
If UCase(Cells(i, 1)) = "
MARKO" Then ' uvjet - obavezno VELIKA slova
wd.Cells(wd.Range("B65536").End(xlUp).Row + 1, 2) = rd.Cells(i, 2)
' kopira iz B stupca izvornog Sheeta u B stupac odredisnog Sheeta u drugi red
End If
Next i
End Sub

----------------------

POZICIONIRAJTE SE na radni list "Baza" i pokrenite Makronaredbu sa ALT+F8 i imate ovakav rezultat. Uočite da su nam se svi Artikli koji pripadaju Marku kopirali u drugi stupac "B" na radnom listu "Zaduzenja"



BTW: Umjesto imena također možete koristiti šifre. Uzmimo da imamo grupe nekih šifri pa te šifre opet imaju pod-šifre, tako možemo iz velikog broja grupa šifri "izvući" koje sve pod-šifre ili elementi pripadaju određenoj grupi itd itd...




DRUGI NAČIN - KOPIRANJE PODATAKA IZ JEDNOG STUPCA NA DRUGI RADNI LIST UZ UVJET POMOĆU FORMULE

U drugom primjeru u istoj situaciji upotrijebit ćemo FORMULU POLJA (matričnu formulu ili Array formula) koja se završava sa Ctrl+Shift+Enter. Pomoću ove formule kopirat ćemo određene podatke koji odgovaraju postavljenom UVJETU na drugi radni list. Ako želite ovo odraditi na istom radnom listu tada možete iskoristiti ali sa malim izmjenama.

Uočite na slici ispod imamo u stupcu "B" na radnom listu "Zaduzenja" redne brojeve od 1,2,3,... Ovi brojevi su obavezni jer se formula polja oslanja na njih jednim svojim dijelom. Dakle opet smo dobili rezultat koji je uvjetovan imenom studenta. Ovaj uvjet potrebno je upisati na prvom radnom listu "Baza" u neku ćeliju. Ja sam uvjet upisao u ćeliju D2 radnog lista "Baza". Ovu adresu ćelije  (Baza!$D$2) iskoristit ćemo u našoj formuli jer a ispred $D$2 dodajemo ime radnog lista Baza! jer formulu kreiramo na drugom radnom listu.

Prvi korak je imenovati raspon podataka na prvom radnom listu "Baza". Taj raspon A2:B17 imenovat ćemo imenom "raspon". Naravno ovo IME nije pod obavezno, mogli smo definirati ime npr: range ili baza ili podaci ili popis itd...

Kada smo definirali ime našeg raspona podataka (range data) idemo u ćeliju B2 na radnom listu "Zaduzenja" kreirati formulu.

=INDEX(raspon;SMALL(IF(raspon=Baza!$D$2;ROW(raspon)-ROW(Baza!$A$2)+1;ROW(Baza!$B17)+1);A2);2)

Ovu formulu završavamo sa CTRL+SHIFT+ENTER jer je to formula polja. Kada je unos fomule završen pjavit će se vitičaste zagrade na početku i na kraju.
PAŽNJA: Nemojte samostalno stavljati vitičaste zagrade!

Kada ste unijeli formulu idemo je kopirati prema dolje do reda dokle smatramo da može biti podataka za određenog studenta. Jednostavnom promjenom UVJETA u ćeliji D2 na radnom listu "Baza", promijenit će se i podaci vezani uz uvjet na radnom listu "Zaduzenja"




Na jednom mjestu popis svih tema vezanih za kopiranje (copy) u Excelu: Tutorijali vezani za radnje kopiranja u Excelu





©- 2006 - 2021 - IvanC  - Sva prava pridržana.  ic.ims.hr