napisał: Stanislaw postów: 109
umieszczony: 13 września 2005 12:21
|
|
Witam,
Aby "załatwić" taki problem musimy w kodzie makra wyspecyfikować
skąd i dokąd mają być kopiowane dane.
Powiedzmy,że chcemy kopiować dane
z arkuszy "Arkusz1" i "Arkusz2" ze skoroszytu "Zeszyt1.xls"
do arkusza "Arkusz1" w skoroszycie "Zeszyt2.xls".
Obydwa skoroszyty: "Zeszyt1.xls" i "Zeszyt2.xls"
muszą być otwarte.
Dane znajdują się w obszarze komórek w kolumnie "A",
który może mieć różną wysokość - ta wysokość może się zmieniać.
Makro może znajdować się w dowolnym skoroszycie.
Dane w arkuszu "Arkusz1" w skoroszycie "Zeszyt2.xls"
są zawsze dodawane na końcu danych w kolumnie A.
Sub Kopiowanie()
Application.ScreenUpdating = False
' Skopiowanie pierwszego obszaru
Workbooks("Zeszyt1.xls").Activate
Worksheets("Arkusz1").Activate
Range("A1", Range("A65536").End(xlUp)).Copy
Workbooks("Zeszyt2.xls").Activate
Worksheets("Arkusz1").Activate
Range("A1").Activate
ActiveSheet.Paste
Application.CutCopyMode = False
' Skopiowanie drugiego obszaru
Workbooks("Zeszyt1.xls").Activate
Worksheets("Arkusz2").Activate
Range("A1", Range("A65536").End(xlUp)).Copy
Workbooks("Zeszyt2.xls").Activate
Worksheets("Arkusz1").Activate
Range("A65536").End(xlUp).Offset(1, 0).Activate
ActiveSheet.Paste
Range("A1").Activate
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
--
Stanislaw |
|
napisał: gadhet postów: 14
umieszczony: 13 września 2005 10:25
|
|
wielkie dzieki Stanislaw!!!Za pomoc,ale mam jeszcze jedno pyatnko.Jak juz z czytam zakres tych komorek np z dwoch arkuszy to pozniej chce te zakresy wkleic do nowego pliku na czysty arkusz.Iw zwizku z tym mam takie pyatnie,poniewaz ma byc to wklejone pod soba kolejno,wiec czyli np jelsi a arkuszu1 azkres jest od a1:a20 a w arkuszu2 od a1:a35 to chce te zakresy wkleic w nowym pliku i arkuszy tak: z arkusza1(zakres a1:a20)i dalej pod tym zakres arkusza2(a1:a35),wiedzialbym jak wykorzystac tamta pomoc,jednak zmienna ostatnia jest to nie obslugiwana w nowym pliku wiec nie moge jej wykorzystac,czy moge??a jelsi tak to jak??A moze jest inny sposob zeby skopiowac te kolumny i wkleic je kolejno pod soba.pozdrawiam i przepraszam za problem!!!
gadhet |
|
napisał: Stanislaw postów: 109
umieszczony: 12 września 2005 18:06
|
|
Skorzystaj z:
Sub Niepusty_zakres_w_kolumnie_A()
Dim ostatnia As Range
Set ostatnia = Range("A65536").End(xlUp)
MsgBox "Zakres komórek niepustych: A1:" & ostatnia.Address(False, False)
Range("A1", ostatnia).Select ' zaznaczenie obszaru
End Sub
--
Pozdrawiam
Stanislaw |
|
napisał: gadhet postów: 14
umieszczony: 12 września 2005 16:37
|
|
Witam wszytskich!!
Prawdopodobnie juz byly takie tematy ale nie moge znalezc.Chodzi mi o to ze chcialbym wiedziec jak napsac makro w ktorym,bylaby jakas funkcja,ktora znajdowalaby mi jaki zakres ma kolumna.A mianowicie np.mam jakas kolumne w excelu w arkusz1 od a1:a20 i w arkusz2 kolumne od a1:a35.To jeszcze by nie bylo problemu,ale chodzi mi jelsi np nie znam tego zakresu w danej kolumnie tzn jest on zmienny dla roznych arkuszy.raz moze to byc tak jak napisalem a20 a w innym arkuszu a35.Czy trzeba pisac jakies warunki,czy istnieje funkcja jakas,cos w stylu currentregion,jednak ta funkcja zaznacza zaly arkusz a ja chce tylko kolumne,prosze o pomoc.pozdrawiam |
|
wstecz 1 dalej wszystkich stron: 1
|