You are on page 1of 7

How to copy multiple nonblank cells to another Sheet without blank row

1 of 7

http://www.ic.ims.hr/faq/office2007/excel2007/copy-selected-nonblanks-...

MICROSOFT EXCEL 2007 - Kako kopirati selektirane ne susjedne elije na drugi List okomito
HOME
FORUM Win Tips&Tricks
KAKO INSTALIRATI
WINDOWS XP ?
Kako instalirati Win XP sa
USB STICKA
Kako instalirati WINDOWS
7?
Nauite za 15 minuta raditi
u Windows XP
Nauite 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 mree
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

Kako kopirati selektirane elije na drugi List


bez praznih redova
(How to copy selected cells to another Sheet
without blank row, nonblank cells)
Match

www.erodate.rs/devojke

Pomozite Vaim oima Uz nae naoare, odmorite oi, smanjite dioptriju, poruite ODMAH www.umbrella.co.rs
Raiffeisen KE KREDITI Popunite svoj zahtev - online. Novac na Vaem raunu za 24h!
Google oglasi

Microsoft Excel

Excel

VBA Excel

www.raiffeisenbank.rs

Microsoft Excel VBA

Kopiranje selektiranih nesusjednih elija ili vrijednosti na drugi radni list pomou VBA makronaredbe
(How to copy multiple nonblank cells to another Sheet)
Ako ste ikada imali potrebu odraditi neko kopiranje na brzinu a takvih kopiranja ima podosta, morali ste
selektirati odreene elije pa Copy pa Paste i tako u krug, a jo ako ih je trebalo posloiti jo vei problem. To zna
biti zamorno i dosadno. Pomou VBA moete to odraditi jednim klikom na button.
U ovom primjeru pokazat u kako moemo selektirati vie ne-susjednih elija (multiple cells) i kopirati ih na drugi
radni list u okomitom rasporedu pomou VBA makronaredbe ali tako da kopirane elije budu jedna ispod druge
bez praznih redova. Kao to i sami znate, Excel ne dozvoljava kopiranje ne-susjednih elija.
Zamislimo situaciju da iz neke tablice moramo kopirati vie elija (vrijednosti) negdje, bilo na istom Sheetu ili na
drugi Sheet.
Pomou Macroa iz priloga dovoljno je selektirati elije i kliknuti na button. Makronaredba e kopirati selektirane
elije na drugi Sheet "komada". Uoite na slici ispod da sam selektirao odreen broj elija koje nisu jedna do
druge tj. nisu susjedne. Kada bih u tom momentu iao na na klasino kopiranje u Excelu, Excel bi me upozorio da
nije mogue kopirati "multiple selected cells". No dovoljan je klik na button za pokretanje Macroa i selektirane
elije bit e kopirane na radni list "komada" jedan ispod drugog bez praznih redova (without blank row). Slijedee
novo selektiranje i opet klik na button Copy i Macro e kopirati u prvu praznu eliju stupca A selektirane elije i
tako redom.

Uoite na slici ispod kopirane vrijednosti sa Sheeta "baza". Ovdje elim napomenuti, da e se brojevi sloiti
redoslijedom kako ste selektirali. Dakle ako elite strogi niz redoslijeda brojeva tada selektirajte u nizu. Nakon
prvog kopiranja selektirajte druge elije i klik na button Copy, podaci e se kopirati u prvu praznu eliju bez
praznih redova itd itd...

4/18/2012 12:53 PM

How to copy multiple nonblank cells to another Sheet without blank row

2 of 7

Google oglasi

Microsoft Excel

http://www.ic.ims.hr/faq/office2007/excel2007/copy-selected-nonblanks-...

Excel

VBA Excel

Microsoft Excel VBA

Za uspjenu upotrebu ove radnje kopirajte Macro kod koji se nalazi ispod u Module vae radne knjige
(Workbook). Insertirajte Button sa kartice Developer i pridruite mu Macro "KopirajSelektirano"

Macro code za ovaj primjer kopiranja raspona elija (tablice) bez praznih redova na drugi Sheet glasi. Kopirajte
ga u Module vae Workbook.
Sub KopirajSelektirano()
'kopiranje selektiranih celija sa jednog Sheet
'na drugi Sheet u okomitom raspordu bez praznih redova
Dim X As Long 'deklariranje varijable "X"
Dim bza As Worksheet 'deklariranje varijable "bza" koja je vezana uz Sheet Baza
Dim kom As Worksheet 'deklariranje varijable "kom" koja je vezana uz Sheet Komada
Set bza = Worksheets("baza") 'Sheet odakle kopiramo
Set kom = Worksheets("komada") 'Sheet gdje kopiramo
bza.Select 'selektiran sheet baza tj. celije na njemu
X = kom.Cells(Rows.Count, 1).End(xlUp).Row + 1 'pronalazi prvi prazni red u stupcu A
Selection.Copy 'kopira selektirano
kom.Range("A" & X).PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False 'zalijepi (paste) u prvu praznu celiju stupca A (prvi red)
Application.CutCopyMode = False 'prekida odabir selektiranog
kom.Columns("A").EntireColumn.AutoFit 'poravna po najduzem podatku u stupcu A
bza.Select 'selektira Sheet baza
End Sub
Ovaj Macro code ispod radi istu radnju kao i ovaj iznad
Sub KopirajSelektiranoOkomito1()
'kopiranje selektiranih celija sa jednog Sheet
'na drugi Sheet u okomitom raspordu bez praznih redova
Dim X As Long 'deklariranje varijable "X"

4/18/2012 12:53 PM

How to copy multiple nonblank cells to another Sheet without blank row

3 of 7

http://www.ic.ims.hr/faq/office2007/excel2007/copy-selected-nonblanks-...

Dim c As Range 'deklariranje varijable "c"


Dim bza As Worksheet 'deklariranje varijable "bza"
Dim kom As Worksheet 'deklariranje varijable "kom"
Set bza = Worksheets("baza") 'postavljanje Sheet odakle kopiramo
Set kom = Worksheets("komada") 'postavljanje Sheet gdje kopiramo
X = kom.Cells(Rows.Count, 1).End(xlUp).Row + 1 'pronalazi prvi prazni red u stupcu A
For Each c In Selection 'za svaku celiju iz selekcije
kom.Cells(X, 1) = c 'prenosi vrijednosti bez formata u slijedeci red prvog stupca
X = X + 1 'row+1
Next
Sheets("baza").Select 'Vraca se na sheet baza
End Sub
Na vama je jo da Kreirate button koji e pokrenuti Macro code
Kopiranje odreenog raspona na drugi list bez praznih redova (Copy range without blank rows to
another Sheet)
U ovom primjeru imamo raspon (range) elija u koje unosimo nekakve podatke. U odnosu na na unos podataka
u nekoj drugoj tablici pomou formula imamo eljene rezultate. elimo te rezultate dobivene formulama
kopirati na drugi Sheet2 ali tako da se kopiraju bez praznih redova jedan ispod drugoga. Kada napravimo novi
unos opet elimo kopirati rezultate na drug Sheet2. U ovakvim sluajevima (zavisno od VBA Macro-a) kopiraju se
svi podaci ali nam Excel javlja greku #REF, to zavisi o Macro-u. Macro u ovom primjeru s obzirom da su
rezultati dobiveni pomou formula nee javiti greku.
Dakle na Sheetu1 imamo unos podataka (vrijednosti) u stupcu B koje trebamo nakon zavr enog unosa kopirati na
Sheet2. Nai rezultati pojavljuju se u rasponu (range) D2:E7.

Na Sheetu2 uoite kopirane podatke nakon klika na button Copy. Nakon kopiranja prvih podataka unosimo druge
podatke i opet klik na button Copy. Ovi naknadni podaci kopirat e se u prvi prazan red ispod ve kopiranih i to
opet bez praznih redova (nonblank cells or rows)

Macro code za ovaj primjer kopiranja raspona elija (tablice) bez praznih redova na drugi Sheet glasi. Kopirajte
ga u Module vae Workbook.
Sub CopyWithNonBlanksRow()
Dim NR As Long
Dim InS As Worksheet
Dim OuS As Worksheet
Dim newRow As Integer

4/18/2012 12:53 PM

How to copy multiple nonblank cells to another Sheet without blank row

4 of 7

http://www.ic.ims.hr/faq/office2007/excel2007/copy-selected-nonblanks-...

Dim colIndex As Integer


Dim rowIndex As Integer
Dim dataRange As Range
Set InS = Sheets("Sheet1")
Set OuS = Sheets("Sheet2")
Set dataRange = InS.Range("D2:E7") 'raspon koji treba kopirati a sadri formule
NR = OuS.Range("A" & Rows.Count).End(xlUp).Row + 1
For rowIndex = 1 To dataRange.Rows.Count
If Application.CountIf(dataRange.Rows(rowIndex), "") < dataRange.Columns.Count Then
dataRange.Rows(rowIndex).Copy
OuS.Range("A" & NR).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=True,
Transpose:=False
NR = NR + 1
End If
Next rowIndex
Sheets("Sheet1").Select 'pozicionira se na Sheet1
Application.CutCopyMode = False 'ukida odabranu selekciju
Range("A2").Select 'pozicionira se na celiju na Sheetu1
End Sub
Na vama je jo da Kreirate button koji e pokrenuti Macro code
Kopiranje podataka iz stupca (raspona) na istom Sheetu bez praznih redova (nonblank row)
U ovom primjeru imamo raspon (range) elija u koje unosimo nekakve podatke. elimo odreeni raspon elija
kopirati u neki stupac ali bez praznih redova (non-blank row).
Dakle na Sheetu1 imamo unos podataka (vrijednosti) u stupcu B koje trebamo nakon zavr enog unosa kopirati u
sitom Sheetu u neki stupac.

Nakon klika na button Copy nai podaci se kopiraju u destinacijski stupac

4/18/2012 12:53 PM

How to copy multiple nonblank cells to another Sheet without blank row

5 of 7

http://www.ic.ims.hr/faq/office2007/excel2007/copy-selected-nonblanks-...

Macro code za ovaj primjer kopiranja raspona elija (tablice) bez praznih redova na drugi Sheet glasi. Kopirajte
ga u Module vae Workbook.
Sub KopirajNonBlankRow()
Dim Source As Range
Dim Dest As Range
Set Source = ActiveSheet.Range("B1:B20")
Set Dest = ActiveSheet.Range("E1")
CopyValuesWithoutBlank Source, Dest
End Sub
Sub CopyValuesWithoutBlank(rngSource As Range, clDest As Range)
' rngSource je kolona sa vrednostima koje se kopiraju
' Kopiraju se samo neprazne celije pocevsi od clDest
' autor JPeca
Dim cl As Variant
For Each cl In rngSource
If Len(cl.Text) > 0 Then 'je li blanko
clDest.Value = cl.Value
Set clDest = clDest.Offset(1) 'slijedeci red
End If
Next cl
End Sub
Na vama je jo da Kreirate button koji e pokrenuti Macro code
Kopiranje odreenog raspona na drugi sheet u istom formatu tablice
Ako elite kopirati neki raspon podataka na drugi Sheet u istom formatu tablice tada iskoristite VBA Macro code iz
ovog primjera.
Imamo podatke koje upisujemo za odreena imena. elimo da u istom formatu kopiramo raspone tablice (range)
na drugi Sheet2. Svako kopiranje treba dodati u novi red ispod ve postojeih podataka.

4/18/2012 12:53 PM

How to copy multiple nonblank cells to another Sheet without blank row

6 of 7

http://www.ic.ims.hr/faq/office2007/excel2007/copy-selected-nonblanks-...

Ovako izgledaju kopirani podaci. Slijedee kopiranje bit e dodano ispod u prvi prazan red

Macro code za ovaj primjer kopiranja raspona elija (tablice) bez praznih redova na drugi Sheet glasi. Kopirajte
ga u Module vae Workbook. Broj jedan (1) u sedmoj liniji koda odreuje prvi destinacijski stupac. Tako je broj 1
= A, 2 = B, 3 = C...
Sub KopirajUprvuPraznuCeliju()
Dim rNextCl As Range 'deklariranje varijable rNextCl
Range("A2:B10").Select 'range za kopiranje na Sheetu1 jer sa njega pokrecemo Macro
Selection.Copy 'kopira selektirani range
Sheets("Sheet2").Select 'pozicioniranje na Sheet2
Set rNextCl = Worksheets("Sheet2").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0) 'pronalazi prvi prazan red na
destinaciji u stupcu A (broj 1) na Sheet2 uz pomak (offset) jednog reda
Worksheets("Sheet2").Activate 'aktiviranje Sheet2
rNextCl.Select 'pronalazi destinaciju
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=True, Transpose:=False 'ljepljenje kopiranoga
Sheets("Sheet1").Select 'pozicioniranje na Sheet1
Application.CutCopyMode = False 'ukidanje selektiranog raspona
Range("B2").Select 'pozicionira se na eliju B2 na Sheet1
End Sub
Na vama je jo da Kreirate button koji e pokrenuti Macro code
Ovo je Macro kod koji odrauje isti posao kao i prethodni VBA Macro. Slovo A u kodu oznaava prvi stupac na
Sheetu2 u koji e se kopirati podaci iz raspona. Kao to znate (ako ne znate tada pogledajte tutorijal VBA
programiranje u Excelu, kod svojstva Offset(1, 0) prvi broj oznaava Row a drugi Column [Offset(Row,
Column)]. U ovom sluaju broj jedan (1) oznaava pomak (Offset) od jednog reda na Sheetu2 tj. prvi prazan
red.
Sub KopirajRangeUprviPrazanRed()
Worksheets("Sheet1").Range("A2:B10").Copy 'selektira i kopira zadati raspon podataka na Sheetu1
Worksheets("Sheet2").Cells(Rows.Count, "A").End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlPasteValues
'pozicionira se u prvi prazan red na Sheetu2 u stupac A i lijepi podatke iz raspona
Sheets("Sheet1").Select 'pozicioniranje na Sheet1
Application.CutCopyMode = False 'ukidanje selektiranog raspona
Range("B2").Select 'pozicionira se na eliju B2 na Sheet1
End Sub

4/18/2012 12:53 PM

How to copy multiple nonblank cells to another Sheet without blank row

7 of 7

http://www.ic.ims.hr/faq/office2007/excel2007/copy-selected-nonblanks-...

Takoer pogledajte tutorijal: Kako kopirati vie izabranih (ne susjednih) elija na drugi Sheet u vodoravnom
rasporedu
Estetska kirurgija Arithera

Estetske i korektivne operacije uz


vrhunski medicinski tim strunjaka.

Nina opet savreno vidi.

Lasersko skidanje dioptrije upola cijene


LASIK, PRK: pola cijene za cijeli ivot.

Like

15k

Dodaj svoj oglas

COPYRIGHT - 2006 - 2011 - IC - Sva prava pridrana. www.ic.ims.hr

4/18/2012 12:53 PM

You might also like