< návrat zpět

MS Excel


Téma: Kopie oblasti buněk mezi sešity rss

Zaslal/a 21.12.2019 15:51

ZačátečníkDobrý den, mám dotaz proč funguje makro
Workbooks(zdrojSesit).Worksheets(zdrojList).Range("A1:AH122").Copy _
Workbooks(cilSesit).Worksheets(cilList).Range("A1")

a makro
Workbooks(zdrojSesit).Worksheets(zdrojList).Range(Cells(1, 1), Cells(122, 34)).Copy _
Workbooks(cilSesit).Worksheets(cilList).Range(Cells(1, 1))

skončí chybou 1004

Díky za nakopnutí definice.

Zaslat odpověď >

Strana:  « předchozí  1 2 3   další »
#045359
Začátečník

Stalker napsal/a:

O Žádnou chybu se nejedná....

Proč bez problémů Workbooks(zdrojSesit).Worksheets(zdrojList).Range("A1:AH122").Copy _

Workbooks(cilSesit).Worksheets(cilList).Range("A1")
projde???

náhradou Range("A1:AH122") za Range(Cells(1,1),Cells(122,34))) zhavaruje?
Range(Cells(1,1)) není až taková zhovadilost, ale souhlasím, postačuje Cells(1,1)citovat
#045360
Stalker

marjankaj napsal/a:

No ja tento zápis používam a funguje. Má to využitie v cykloch. Iba v tomto prípade s COPY to nefunguje.


Jakože používáš např Range(Cells(i,1)) ?

No není mi jasný proč bych měl jednu buňku tedy např. cells(1,1) ještě balit do range? Vždiť stačí uvest jen cells(1,1).

Pokud chci vybrat oblast dá se použít tento zápis Range(Cells(1, 1), Cells(122, 34)), i když bych spíše volil
Range("A1").Resize(122, 34)
nebo
Cells(1,1).Resize(122, 34)

Nebo si stojím na vedení?citovat
#045361
Stalker

Začátečník napsal/a:


náhradou Range("A1:AH122") za Range(Cells(1,1),Cells(122,34))) zhavaruje?
Range(Cells(1,1)) není až taková zhovadilost, ale souhlasím, postačuje Cells(1,1)


Protože Range(Cells(1,1),Cells(122,34)) projde a zhavaruje to právě na Range(Cells(1,1))citovat
#045362
avatar
Ono to prejde ale keď to spustíš z aktívneho hárku. Ale ak je aktívny cieľový hárok tak je chyba. Ku každému CELLS musíš zadať aj cestu.citovat
#045363
avatar

Stalker napsal/a:

Pokud chci vybrat oblast dá se použít tento zápis Range(Cells(1, 1), Cells(122, 34)), i když bych spíše volil
Range("A1").Resize(122, 34)
nebo
Cells(1,1).Resize(122, 34)

Nebo si stojím na vedení?

A skúšal si to? Tiež by to malo hodiť chybu.citovat
#045364
Stalker

marjankaj napsal/a:

Stalker napsal/a:Pokud chci vybrat oblast dá se použít tento zápis Range(Cells(1, 1), Cells(122, 34)), i když bych spíše volil
Range("A1").Resize(122, 34)
nebo
Cells(1,1).Resize(122, 34)

Nebo si stojím na vedení?
A skúšal si to? Tiež by to malo hodiť chybu.


Zkoušel a projde bez problému, ani nemusí být aktivní zdrojový list.

Sub qq()
Workbooks("zdrojSesit.xlsm").Worksheets("zdrojList").Cells(1, 1).Resize(122, 34).Copy _
Workbooks("cilSesit.xlsx").Worksheets("cilList").Range("A1")
End Sub
citovat
#045365
avatar
Keď tak na to pozerám stačilo vyhodiť ten RANGE.
Workbooks(zdrojSesit).Worksheets(zdrojList).Range(Cells(1, 1), Cells(122, 34)).Copy _

Workbooks(cilSesit).Worksheets(cilList).Cells(1, 1)
citovat
#045366
Stalker

marjankaj napsal/a:

Keď tak na to pozerám stačilo vyhodiť ten RANGE.
Workbooks(zdrojSesit).Worksheets(zdrojList).Range(Cells(1, 1), Cells(122, 34)).Copy _

Workbooks(cilSesit).Worksheets(cilList).Cells(1, 1)


Jak se to vezme.
Ano kód bude funkční, ale pouze za předpokladu, že zdrojový list bude aktivní.

V případě cells(1,1).resize .....
na tom nezáleží
viz soubory
Příloha: zip45366_wall.zip (20kB, staženo 16x)
citovat
#045367
avatar

Stalker napsal/a:

marjankaj napsal/a:Keď tak na to pozerám stačilo vyhodiť ten RANGE.
Workbooks(zdrojSesit).Worksheets(zdrojList).Range(Cells(1, 1), Cells(122, 34)).Copy _

Workbooks(cilSesit).Worksheets(cilList).Cells(1, 1)

Jak se to vezme.
Ano kód bude funkční, ale pouze za předpokladu, že zdrojový list bude aktivní.

RESIZE je zbytočné. A je jedno ktorý list bude aktívny.
Máš pravdu chyba bola RANGE(CELLS(1,1)). Úplne stačilo CELLS(1,1). Tam bola chyba.citovat
#045368
Stalker

marjankaj napsal/a:

RESIZE je zbytočné. A je jedno ktorý list bude aktívny.

Otestuj si přiložené soubory a uvidíš 1citovat

Strana:  « předchozí  1 2 3   další »

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje