- Nukopijuokite (iškirpkite) ir įklijuokite vieną langelį
- Kopijuoti pasirinkimą
- Nukopijuokite (iškirpkite) ir įklijuokite ląstelių diapazoną
- Nukopijuokite (iškirpkite) ir įklijuokite visą stulpelį
- Nukopijuokite (iškirpkite) ir įklijuokite visą eilutę
- Nukopijuokite (iškirpkite) ir įklijuokite į kitą darbalapį arba darbaknygę
- Vertės įklijavimas
- Įklijuoti specialiai
Š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.