Kopējiet diapazonu ar vairākām zonām uz noteiktu lapu, izmantojot Microsoft Excel VBA

Anonim

Šajā rakstā mēs izveidosim makro vairāku apgabalu apvienošanai noteiktā lapā.

Neapstrādāti dati sastāv no dažiem izlases datiem, tostarp vārda un vecuma. Mums ir divas jomas, kurās ir neapstrādāti dati. Mēs vēlamies abu jomu apvienošanu lapā “Galamērķis”.

Noklikšķinot uz pogas “Kopēt ierakstu”, tiks apvienoti abu apgabalu dati un formatēts.

Noklikšķinot uz pogas “Tikai kopēt vērtību”, tiks apvienoti arī abu apgabalu dati, taču netiks kopēts šūnas formāts.

Koda skaidrojums

Katrai mazai izklājlapu sadaļai ("Galvenais"). Diapazons ("A9: B13, D16: E20").

Nākamais Smallrng

Iepriekš minēto par katru cilpu izmanto, lai veiktu cilpu noteiktos apgabalos.

Set DestRange = Sheets ("Destination"). Diapazons ("A" un LastRow)

Iepriekš minēto kodu izmanto, lai izveidotu diapazona objektu pēdējā šūnā, kurā mēs vēlamies kopēt datus.

Smallrng.Copy DestRange

Iepriekš minēto kodu izmanto, lai kopētu datus uz norādīto galamērķi.

Lūdzu, sekojiet tālāk norādītajam kodam

 Opcija Explicit Sub CopyMultiArea () 'Deklarējošie mainīgie Dim DestRange Kā diapazons Dim Smallrng Kā diapazons Dim LastRow cik ilgi' Looping caur noteiktiem apgabaliem katrai Smallrng In Sheets ("Main"). Diapazons ("A9: B13, D16: E20"). Apgabalu pēdējās šūnas rindas numura atrašana LastRow = Sheets ("Destination"). Diapazons ("A1"). SpecialCells (xlLastCell). = Izklājlapas ("Galamērķis"). Diapazons ("A" un pēdējā rinda - 1) Cits iestatījums DestRange = Loksnes ("Galamērķis"). Diapazons ("A" un LastRow) Beigas Ja "Ierakstu kopēšana uz norādīto galamērķa diapazonu Smallrng.Copy DestRange Nākamais Smallrng End Sub Sub CopyMultiAreaValues ​​() 'Deklarējošie mainīgie Dim DestRange kā diapazons Dim Smallrng Kā diapazons Dim LastRow cik ilgi' Looping caur noteiktiem apgabaliem katrai Smallrng In Sheets ("Main"). Diapazons ("A9: B13, D16: E20" ) .Zonas 'Pēdējās šūnas rindas numura atrašana LastRow = Sheets ("Destination"). Diapazons ("A1"). SpecialCells (xlLastCell). Rinda + 1 ar Smallrng "Šūnas izvēle auklas ir jākopē, ja LastRow = 2 Tad iestatiet DestRange = Sheets ("Galamērķis"). Diapazons ("A" un LastRow - 1) .Resize (.Rows.Count, .Columns.Count) Cits Set DestRange = Sheets (" Galamērķis "). Diapazons (" A "un pēdējā rinda). Izmērs (.Rows.Count, .Columns.Count) Beidzas, ja beidzas ar" Vērtību piešķiršana no avota līdz galamērķim DestRange.Value = Smallrng.Value Next Smallrng End Sub 

Ja jums patika šis emuārs, kopīgojiet to ar saviem draugiem Facebook. Varat arī sekot mums Twitter un Facebook.

Mēs labprāt uzklausītu jūsu viedokli, dariet mums zināmu, kā mēs varam uzlabot savu darbu un padarīt to labāku jums. Rakstiet mums e -pasta vietnē