Tässä opetusohjelmassa opit useita eri tapoja kopioida ja liittää sekä leikata ja liittää VBA -makron avulla. Lue lisäopastuksesta Value Pasing and PasteSpecial, jos haluat edistyneempiä kopiointi- ja liittämisvaihtoehtoja.
Tämän koodin käyttäminen: Avaa Visual Basic Editor (Alt + F11), Aseta uusi moduuli (Lisää> Moduuli) ja kopioi ja liitä haluamasi koodi moduuliin.
Kopioi (leikkaa) ja liitä yksi solu
Tämä esimerkki kopioi tai leikkaa ja liittää yhden solun, A1, B1:
123456789 | Sub Paste_OneCell ()'Kopioi ja liitä yksi soluAlue ("A1"). Kopioi alue ("B1")'Leikkaa ja liitä yksi soluAlue ("A1"). Leikkausalue ("B1")End Sub |
Kopioi valinta
Jos haluat kopioida aktiivisen valinnan, käytä tätä:
123456789101112 | Sub CopySelection ()'Liitä määritettyyn alueeseenValinta.kopioalue ("b1")'Offset Paste (siirtää 2 solua alaspäin ja 1 oikealleValinta. KopioValinta. Siirtymä (2,1). TahnaApplication.CutCopyMode = VääräEnd Sub |
Kopioi (leikkaa) ja liitä solualue
Tässä esimerkissä kopioidaan tai leikataan ja liitetään solualue, A1: A3, B1: B3:
123456789 | Sub Paste_Range ()'Kopioi ja liitä joukko solujaAlue ("A1: A3"). Kopioalue ("B1: B3")'Leikkaa ja liitä joukko solujaAlue ("A1: A3"). Leikkausalue ("B1: B3")End Sub |
Kopioi (leikkaa) ja liitä koko sarake
Alla esittelemme pari nopeaa esimerkkiä. Lue artikkelistamme Rivien ja sarakkeiden kopioiminen ja liittäminen yksityiskohtaisia esimerkkejä, selityksiä ja muunnelmia.
Tämä esimerkki kopioi tai leikkaa ja liittää koko sarakkeen, A: sta B: hen:
12345678910 | Sub PasteOneColumn ()Kopioi ja liitä sarakeAlue ("A: A"). Kopioi alue ("B: B")'Leikkaa ja liitä sarakeAlue ("A: A"). Leikkaa alue ("B: B")End Sub |
Kopioi (leikkaa) ja liitä koko rivi
Tämä esimerkki kopioi tai leikkaa ja liittää koko rivin 1: 2:
12345678910 | Sub Paste_OneRow ()Kopioi ja liitä riviAlue ("1: 1"). Kopioi alue ("2: 2")'Leikkaa ja liitä riviAlue ("1: 1"). Leikkaa alue ("2: 2")End Sub |
Kopioi (leikkaa) ja liitä toiseen laskentataulukkoon tai työkirjaan
1234567891011121314 | Sub Paste_Other_Sheet_or_Book ()'Leikkaa tai kopioi ja liitä toiseen laskentataulukkoonLaskentataulukot ("arkki1"). Alue ("A1"). Kopioi laskentataulukot ("arkki2"). Alue ("B1") 'KopioiLaskentataulukot ("arkki1"). Alue ("A1"). Leikkaa työkirjat ("arkki2"). Alue ("B1") 'Leikkaa'Leikkaa tai kopioi ja liitä toiseen työkirjaanTyökirjat ("book1.xlsm"). Laskentataulukot ("sheet1"). Alue ("A1"). Kopio _Työkirjat ("book2.xlsm"). Laskentataulukot ("sheet1"). Alue ("B1") 'KopioiTyökirjat ("book1.xlsm"). Laskentataulukot ("sheet1"). Alue ("A1"). Leikkaa _Työkirjat ("book2.xlsm"). Laskentataulukot ("sheet1"). Alue ("B1") 'LeikkaaApplication.CutCopyMode = VääräEnd Sub |
Arvo Liitä
Normaalisti kopioidessasi ja liittäessäsi Liitä kaikki solun ominaisuudet: muotoilu, kaavat jne.… Arvon liittämisen avulla voit kopioida ja liittää solujen arvoja eikä mitään muuta. Helpoin tapa Value Paste -ohjelmaan VBA: ssa on määrittää solun arvo suoraan:
123456789101112131415 | AlaarvoPaste ()'Value Paste CellsAlue ("B1"). Arvo = Alue ("A1"). ArvoAlue ("B1: B3"). Arvo = Alue ("A1: A3"). Arvo'Aseta arvot laskentataulukoiden välilläLaskentataulukot ("arkki2"). Alue ("A1"). Arvo = laskentataulukot ("arkki1"). Alue ("A1"). Arvo'Aseta arvot työkirjojen välilläTyökirjat ("book2.xlsm"). Laskentataulukot ("sheet1"). Alue ("A1"). Arvo = _Työkirjat ("book1.xlsm"). Laskentataulukot ("sheet1"). Alue ("A1"). ArvoApplication.CutCopyMode = VääräEnd Sub |
Liitä erityinen
Paste Special -toiminnon avulla voit kopioida ja liittää tiettyjä solujen ominaisuuksia (esimerkkejä: muodot, arvot, sarakeleveydet jne.). Sen avulla voit myös suorittaa erityisiä liitäntätoimenpiteitä (esimerkkejä: ohita aihiot, transponoi). Tarkastelemme alla useita esimerkkejä, mutta lue perusteellinen opetusohjelma Value Pasting ja Paste Special.
12345678910111213141516171819 | Sub PasteSpecial ()'Suorita yksi Paste -erikoistoiminto:Alue ("A1")'Liitä muodotAlue ("B1"). PasteSpecial Paste: = xlPasteFormatsLiitä sarakkeen leveydetAlue ("B1"). PasteSpecial Paste: = xlPasteColumnWidths'Liitä kaavatAlue ("B1"). PasteSpecial Paste: = xlPasteFormulas'Suorita usean liittämisen erikoistoimintoja kerralla:Alue ("A1")'Liitä muodot ja transponoiAlue ("B1"). PasteSpecial Paste: = xlPasteFormats, Operation: = xlNone, SkipBlanks: = _False, Transpose: = TottaApplication.CutCopyMode = VääräEnd Sub |
Tyhjennä leikepöytä
Kopioinnin ja liittämisen jälkeen haluat ehkä tyhjentää leikepöydän (teemme joissakin yllä olevissa koodiesimerkissä). Excel -leikepöydän tyhjentämiseksi asetamme Application.CutCopyMode -asetukseksi False:
1 | Application.CutCopyMode = Väärä |
Tämä tyhjentää Excelin leikepöydän. Se ei kuitenkaan tyhjennä Windowsin leikepöytää. Voit tyhjentää ikkunan leikepöydän noudattamalla näitä ohjeita.