< návrat zpět

MS Excel


Téma: Kopírování oblasti buněk pomocí cells rss

Zaslal/a 28.5.2020 14:28

Dobrý den,

V příloze mám ukázkový příklad, ve kterém pomocí cells kopíruji konkrétní (jednotlivé) buňky. Je možné definovat resp kopírovat oblast buněk pomocí cells?

defakto potřebuji např. zápis

Worksheets("List2").Range("B7:D21") = Worksheets("List1").Range("B9:D23") nahradit zápisem pomocí cells, jelikož využívám cyklus DO WHILE a potřebuji se v případě neprázdné buňky posunout o 5 sloupců vpravo.

Napadá mě kopírovat každou buňku separátně, což znamená dalších 45 řádků kódu, ale možná to jde nějakou jednodušší cestou?

Logika kopírování je doufám pochopitelná z přílohy (pokud je pole B2 Listu 2 prázdné, uloží se data z Listu1 po kliknutí na tlačítko data do první tabulky na Listu2, pokud prázdné není, testuje se obsazenost pole G2 atd.)

Za postřehy děkuji

Miroslav

Příloha: zip46727_kopirovani_oblasti_cells.zip (22kB, staženo 23x)
Zaslat odpověď >

#046730
Stalker
Myslel si to třeba takto ?
Private Sub CommandButton1_Click()

Pocitadlo = 2
Do While Pocitadlo < 30 '
If Worksheets("List2").Cells(2, Pocitadlo) = "" Then
With Me
List2.Cells(2, Pocitadlo).Resize(4) = Application.Transpose(Array(.Cells(3, 3), .Cells(4, 3), .Cells(5, 3), .Cells(6, 3)))
Exit Sub
End With
Else
Pocitadlo = Pocitadlo + 5
End If
Loop
End Sub

citovat
#046731
elninoslov
Podľa mňa netreba transponovať:
Private Sub CommandButton1_Click()
Pocitadlo = 2
Do While Pocitadlo < 30 '
If Worksheets("List2").Cells(2, Pocitadlo) = "" Then
Worksheets("List2").Cells(2, Pocitadlo).Resize(4).Value = Worksheets("List1").Cells(3, 3).Resize(4).Value 'číslo zakázky a objednávky, datum objednávky a expedice
Worksheets("List2").Cells(7, Pocitadlo - 1).Resize(15, 4).Value = Worksheets("List1").Cells(9, 1).Resize(15, 4).Value 'položky
Exit Sub
Else
Pocitadlo = Pocitadlo + 5
End If
Loop
End Sub
citovat
#046732
Stalker
To elnino:
Samozřejmě máš pravdu 10citovat

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