Nukopijuokite diapazoną su daugiau sričių į nurodytą lapą naudodami „Microsoft Excel“ VBA

Anonim

Šiame straipsnyje sukursime makrokomandą, skirtą kelių sričių sujungimui į nurodytą lapą.

Neapdorotus duomenis sudaro kai kurie duomenų pavyzdžiai, įskaitant vardą ir amžių. Turime dvi sritis, kuriose yra neapdorotų duomenų. Mes norime, kad abiejų sričių sąjunga būtų įtraukta į lapą „Paskirtis“.

Spustelėjus mygtuką „Kopijuoti įrašą“, bus sujungti abiejų sričių duomenys ir formatavimas.

Spustelėjus mygtuką „Tik kopijuoti vertę“ taip pat bus sujungti abiejų sričių duomenys, tačiau nekopijuojamas langelio formatas.

Kodo paaiškinimas

Kiekvienam mažam lapų skaičiui („Pagrindinis“). Diapazonas („A9: B13, D16: E20“). Sritys

Kitas „Smallrng“

Aukščiau pateikta kiekvienos kilpos kilpa naudojama apibrėžtose srityse.

Nustatykite DestRange = Sheets („Paskirties vieta“). Diapazonas („A“ ir „LastRow“)

Aukščiau pateiktas kodas naudojamas paskutinio langelio, kuriame norime nukopijuoti duomenis, diapazono objektui sukurti.

„Smallrng.Copy DestRange“

Aukščiau pateiktas kodas naudojamas duomenims kopijuoti į nurodytą paskirties vietą.

Sekite toliau pateiktą kodą

 Parinktis „Explicit Sub CopyMultiArea ()“ Deklaruojantys kintamieji „Dim DestRange“ kaip diapazonas „Dim Smallrng“ kaip diapazonas „Dim LastRow“ tol “„ Keliavimas per nurodytas sritis kiekvienam mažam lapui („Pagrindinis“). Diapazonas („A9: B13, D16: E20“). Sritys 'Paskutinio langelio eilutės numerio radimas LastRow = Sheets ("Paskirtis"). Diapazonas ("A1"). SpecialCells (xlLastCell). Eilutė + 1' Langelio, į kurį reikia kopijuoti įrašus, pasirinkimas Jei LastRow = 2 Tada Nustatykite DestRange = Skaičiuoklės ("Paskirties vieta"). Diapazonas ("A" ir paskutinė eilutė - 1) Kitas rinkinys DestRange = Lakštai ("Paskirties vieta"). Diapazonas ("A" ir paskutinė eilutė) Pabaiga Jei kopijuojami įrašai į nurodytą paskirties diapazoną Smallrng.Copy DestRange Kitas „Smallrng“ pabaigos subpopuliarus CopyMultiAreaValues ​​() „Deklaruojantys kintamieji Dim DestRange kaip diapazonas Dim Smallrng Kaip diapazonas Dim LastRow kaip ilgai“ Keliavimas per nurodytas sritis kiekvienam „Smallrng In Sheets“ („Pagrindinis“). Diapazonas („A9: B13, D16: E20“) ) .Sritys 'Paskutinio langelio eilutės numerio radimas LastRow = Sheets ("Paskirtis"). Diapazonas ("A1"). SpecialCells (xlLastCell). Eilutė + 1 su Smallrng' Langelio, kuriame re laidai turi būti nukopijuoti If LastRow = 2 Tada nustatykite DestRange = Sheets ("Paskirties vieta"). Diapazonas ("A" ir LastRow - 1) .Resize (.Rows.Count, .Columns.Count) Kitas Set DestRange = Sheets (" Paskirties vieta "). Diapazonas (" A "ir paskutinė eilutė) .Resize (.Rows.Count, .Columns.Count) Pabaiga Jei pabaiga" Vertių priskyrimas iš šaltinio į paskirties vietą DestRange.Value = Smallrng.Value Kitas Smallrng End Sub 

Jei jums patiko šis tinklaraštis, pasidalykite juo su draugais „Facebook“. Be to, mus galite sekti „Twitter“ ir „Facebook“.

Mes norėtume išgirsti jūsų nuomonę, praneškite mums, kaip galime pagerinti savo darbą ir padaryti jį geresnį. Rašykite mums el