Iškirpti, kopijuoti ir įklijuoti iš makrokomandos - VBA kodo pavyzdžiai

Šioje pamokoje sužinosite keletą skirtingų metodų, kaip kopijuoti ir įklijuoti bei iškirpti ir įklijuoti naudojant VBA makrokomandą. Skaitykite papildomą vadovėlį apie vertės įklijavimą ir įklijavimą, kad gautumėte daugiau išplėstinių kopijavimo ir įklijavimo parinkčių.

Norėdami naudoti šį kodą: atidarykite „Visual Basic“ redaktorių (Alt + F11), Įdėkite naują modulį (Įterpti> Modulis) ir nukopijuokite ir įklijuokite norimą kodą į modulį.

Nukopijuokite (iškirpkite) ir įklijuokite vieną langelį

Šis pavyzdys nukopijuoja arba iškirpia ir įklijuoja vieną langelį, A1 į B1:

123456789 Sub Paste_OneCell ()„Kopijuoti ir įklijuoti vieną langelįDiapazonas („A1“). Kopijuoti diapazoną („B1“)„Iškirpkite ir įklijuokite vieną langelįDiapazonas („A1“). Pjovimo diapazonas („B1“)Pabaiga Sub

Kopijuoti pasirinkimą

Jei norite nukopijuoti aktyvų pasirinkimą, naudokite tai:

123456789101112 Sub CopySelection ()'Įklijuokite į apibrėžtą diapazoną„Selection.copy“ diapazonas („b1“)„Ofsetinis įklijavimas“ (kompensuoja 2 langelius žemyn ir 1 į dešinęAtranka.kopijaPasirinkimas.kompensacija (2,1) .pastaApplication.CutCopyMode = NetiesaPabaiga Sub

Nukopijuokite (iškirpkite) ir įklijuokite ląstelių diapazoną

Šis pavyzdys nukopijuoja arba iškirpia ir įklijuoja langelių diapazoną, A1: A3 į B1: B3:

123456789 Sub Paste_Range ()„Nukopijuokite ir įklijuokite ląstelių diapazonąDiapazonas („A1: A3“). Kopijuoti diapazoną („B1: B3“)„Iškirpkite ir įklijuokite daugybę ląsteliųDiapazonas („A1: A3“). Pjovimo diapazonas („B1: B3“)Pabaiga Sub

Nukopijuokite (iškirpkite) ir įklijuokite visą stulpelį

Žemiau mes parodysime keletą greitų pavyzdžių. Norėdami gauti išsamių pavyzdžių, paaiškinimų ir variantų, skaitykite mūsų straipsnį apie eilučių ir stulpelių kopijavimą ir įklijavimą.

Šis pavyzdys nukopijuoja arba iškirpia ir įklijuoja visą stulpelį nuo A iki B:

12345678910 Sub PasteOneColumn ()„Kopijuoti ir įklijuoti stulpelįDiapazonas („A: A“). Kopijuoti diapazoną („B: B“)„Iškirpti ir įklijuoti stulpelįDiapazonas („A: A“). Iškirpti diapazonas („B: B“)Pabaiga Sub

Nukopijuokite (iškirpkite) ir įklijuokite visą eilutę

Šiame pavyzdyje nukopijuojama, iškirpiama ir įklijuojama visa eilutė, nuo 1 iki 2:

12345678910 Sub Paste_OneRow ()„Kopijuoti ir įklijuoti eilutęDiapazonas („1: 1“). Kopijuoti diapazoną („2: 2“)„Iškirpti ir įklijuoti eilutęDiapazonas („1: 1“). Iškirpti diapazonas („2: 2“)Pabaiga Sub

Nukopijuokite (iškirpkite) ir įklijuokite į kitą darbalapį arba darbaknygę

1234567891011121314 Sub Paste_Other_Sheet_or_Book ()„Iškirpti arba nukopijuoti ir įklijuoti į kitą darbalapįDarbo lapai ("lapas1"). Diapazonas ("A1"). Kopijuoti darbalapius ("lapas2"). Diapazonas ("B1") 'KopijuotiDarbo lapai ("lapas1"). Diapazonas ("A1"). Iškirpti darbalapius ("lapas2"). Diapazonas ("B1") 'Iškirpti„Iškirpti arba nukopijuoti ir įklijuoti į kitą darbaknygęDarbaknygės ("book1.xlsm"). Darbo lapai ("sheet1"). Diapazonas ("A1"). Kopija _Darbaknygės ("book2.xlsm"). Darbo lapai ("sheet1"). Diapazonas ("B1") 'KopijaDarbaknygės ("book1.xlsm"). Darbo lapai ("sheet1"). Diapazonas ("A1"). Iškirpti _Darbo knygos ("book2.xlsm"). Darbo lapai ("sheet1"). Diapazonas ("B1") 'IškirptiApplication.CutCopyMode = NetiesaPabaiga Sub

Vertės įklijavimas

Paprastai, kai kopijuojate ir įklijuojate, įklijuojate visas langelio savybes: formatavimą, formules ir tt … Vertės įklijavimas leidžia kopijuoti ir įklijuoti langelių vertes ir nieko kito. Lengviausias būdas įklijuoti „Value Paste“ VBA yra tiesiogiai apibrėžti langelio vertę:

123456789101112131415 Sub ValuePaste ()„Vertės įklijavimo langeliaiDiapazonas („B1“). Vertė = Diapazonas („A1“). VertėDiapazonas („B1: B3“). Vertė = Diapazonas („A1: A3“). Vertė„Nustatykite vertes tarp darbalapiųDarbo lapai ("lapas2"). Diapazonas ("A1"). Vertė = darbalapiai ("lapas1"). Diapazonas ("A1"). Vertė„Nustatykite vertes tarp darbaknygiųDarbaknygės ("book2.xlsm"). Darbo lapai ("sheet1"). Range ("A1"). Value = _Darbaknygės ("book1.xlsm"). Darbo lapai ("sheet1"). Diapazonas ("A1"). VertėApplication.CutCopyMode = NetiesaPabaiga Sub

Įklijuoti specialiai

„Paste Special“ leidžia kopijuoti ir įklijuoti konkrečias langelių savybes (pavyzdžiai: formatai, vertės, stulpelių pločiai ir kt.). Tai taip pat leidžia atlikti specialias įklijavimo operacijas (pavyzdžiai: praleisti ruošinius, perkelti). Žemiau apžvelgsime kelis pavyzdžius, tačiau norėdami išsamiai perskaityti mūsų vadovėlį apie vertės įklijavimą ir specialų įklijavimą.

12345678910111213141516171819 Sub PasteSpecial ()„Atlikite vieną specialią pastos operaciją:Diapazonas („A1“). Kopijuoti„Įklijuoti formatusDiapazonas („B1“). PasteSpecial Paste: = xlPasteFormats„Įklijuoti stulpelių pločiusDiapazonas („B1“). PasteSpecial Paste: = xlPasteColumnWidths„Įklijuokite formulesDiapazonas („B1“). PasteSpecial Paste: = xlPasteFormulas„Atlikite kelias įklijavimo specialias operacijas vienu metu:Diapazonas („A1“). Kopijuoti„Įklijuokite formatus ir perkelkiteDiapazonas („B1“). PasteSpecial Paste: = xlPasteFormats, Operacija: = xlNone, SkipBlanks: = _Netiesa, perkelti: = tiesaApplication.CutCopyMode = NetiesaPabaiga Sub

Išvalyti iškarpinę

Po kopijavimo ir įklijavimo galbūt norėsite išvalyti iškarpinę (tai darome kai kuriuose aukščiau pateiktuose kodo pavyzdžiuose). Norėdami išvalyti „Excel“ iškarpinę, nustatome „Application.CutCopyMode“ į „False“:

1 Application.CutCopyMode = Netiesa

Tai išvalys „Excel“ iškarpinę. Tačiau „Windows“ iškarpinė nebus išvalyta. Norėdami išvalyti lango iškarpinę, vykdykite čia pateiktas instrukcijas.

Padėsite svetainės plėtrą, dalintis puslapį su draugais

wave wave wave wave wave