See õpetus näitab teile, kuidas kasutada PasteSpeciali VBA -s, et kleepida ainult teatud lahtri atribuute (nt väärtused, vormingud)
Kui Excelis lahtrit kopeerite ja kleepite, kopeerite ja kleepite kõik lahtri omadused: väärtused, vormingud, valemid, numbrivorming, äärised jne:
Selle asemel saate kleepida spetsiaalselt, et kleepida ainult teatud lahtri atribuute. Excelis pääseb menüüsse Paste Special juurde kiirklahviga CTRL + ALT + V (pärast lahtri kopeerimist):
Siin näete kõiki lahtrite omaduste kombinatsioone, mida saate kleepida.
Kui salvestate makro menüü Paste Special menüü kasutamise ajal, saate lihtsalt loodud koodi kasutada. See on sageli lihtsaim viis VBA -d spetsiaalse kleepimiseks kasutada.
Väärtuste kleepimine
Väärtuste kleepimine kleebib ainult lahtri väärtuse. Kui lahter sisaldas valemit, kleepib kleepimisväärtused valemi tulemuse.
See kood kopeerib ja kleepib ühe töölehe ühe lahtri väärtused:
12 | Vahemik ("A1"). KopeeriVahemik ("B1"). PasteSpecial Paste: = xlPasteValues |
Kopeerige ja lisage väärtus erinevale lehele
See näide kopeerib ja kleepib erinevate töölehtede üksikute lahtrite väärtusi
12 | Arvutustabelid ("leht 1"). Vahemik ("A1"). KopeeriArvutustabelid ("leht 2"). Vahemik ("B1"). Kleebi |
Need näited kopeerivad ja kleepivad lahtrite vahemike väärtusi.
Kopeerimis- ja väärtuskleebi vahemikud
12 | Vahemik ("A1: B3"). KopeeriVahemik ("C1"). PasteSpecial Paste: = xlPasteValues |
Veergude kopeerimine ja väärtuste kleepimine
12 | Veerud ("A"). KopeeriVeerud ("B"). PasteSpecial Paste: = xlPasteValues |
Ridade kopeerimine ja väärtuste kleepimine
12 | Ridad (1). KopeeriRidad (2). Kleebi eripasta: = xlPasteValues |
Kleebi väärtused ja numbrivormingud
Väärtuste kleepimine kleebib ainult lahtri väärtuse. Vormindamist, sealhulgas numbrivormingut, ei kleebita.
Sageli soovite väärtuste kleepimisel lisada ka numbrivormingu, et teie väärtused jääksid vormindatuks. Vaatame näidet.
Siin väärtustame protsent sisaldava lahtri kleepimist:
12 | Arvutustabelid ("Leht1"). Veerud ("D"). KopeeriArvutustabelid ("leht 2"). Veerud ("B"). PasteSpecial Paste: = xlPasteValues |
Pange tähele, kuidas protsentide vormindamine on kadunud ja selle asemel kuvatakse lohakas kümnendväärtus.
Selle asemel kasutame väärtuste ja numbrite kleepimise vorminguid:
12 | Arvutustabelid ("Leht1"). Veerud ("D"). KopeeriArvutustabelid ("leht 2"). Veerud ("B"). Kleebi |
Nüüd näete, et ka numbrite vormindamine on kleebitud, säilitades protsendivormingu.
.Väärtus .Pasta asemel
Väärtuste kleepimise asemel võite kasutada objekti Vahemik atribuuti Value:
See seab A2 lahtri väärtuse võrdseks B2 lahtri väärtusega
1 | Vahemik ("A2"). Väärtus = vahemik ("B2"). Väärtus |
Samuti saate määrata lahtrite vahemiku, mis võrdub ühe lahtri väärtusega.
1 | Vahemik ("A2: C5"). Väärtus = vahemik ("A1"). Väärtus |
või lahtrite vahemik, mis on võrdne teise identse suurusega lahtrivahemikuga:
1 | Vahemik ("B2: D4"). Väärtus = vahemik ("A1: C3"). Väärtus |
Atribuudi Value kasutamine on vähem trükkimist. Samuti, kui soovite Exceli VBA -ga hakkama saada, peaksite olema tuttav lahtrite väärtusega atribuut.
Lahtri väärtus vs väärtus2 atribuut
Tehniliselt on parem kasutada lahtri atribuuti Value2. Väärtus2 on veidi kiirem (see on oluline ainult eriti suurte arvutuste korral) ja atribuut Väärtus võib anda teile kärbitud tulemuse, kui lahter on vormindatud valuutaks või kuupäevaks. Siiski kasutab 99%+ minu nähtud koodist väärtust .Väärtus, mitte .Väärtus2. Mina isiklikult ei kasuta .Väärt2, kuid peaksite olema teadlik selle olemasolust.
1 | Vahemik ("A2"). Väärtus2 = Vahemik ("B2"). Väärtus2 |
Copy Paste Builder
Oleme loonud kopeerimiskoodi koostaja, mis hõlbustab VBA -koodi genereerimist lahtrite kopeerimiseks (või lõikamiseks) ja kleepimiseks. Ehitaja on meie osa VBA lisandmoodul: AutoMacro.
AutoMacro sisaldab ka palju muud Koodigeneraatorid, ulatuslik Kooditeek, ja võimas Kodeerimisvahendid.
Kleebi spetsiaalselt - vormingud ja valemid
Lisaks kleepimisväärtustele on kõige tavalisemad kleepimise erivõimalused kleepimisvormingud ja kleepimisvalemid
Vormingute kleepimine
Vormingute kleepimine võimaldab kleepida kogu lahtri vormingu.
12 | Vahemik ("A1: A10"). KopeeriVahemik ("B1: B10"). PasteSpecial Paste: = xlPasteFormats |
Kleebi valemid
Valemite kleepimine kleebib ainult lahtrivalemid. See on ka äärmiselt kasulik, kui soovite kopeerida lahtrivalemeid, kuid ei soovi kopeerida lahtri taustavärve (või muud lahtrite vormindamist).
12 | Vahemik ("A1: A10"). KopeeriVahemik ("B1: B10"). PasteSpecial Paste: = xlPasteFormulas |
Kleebi valemid ja numbrivormingud
Sarnaselt ülaltoodud väärtuste ja numbrivormingute kleepimisega saate kopeerida ja kleepida ka numbrivorminguid koos valemitega
Siin kopeerime lahtrivalemi ainult raamatupidamisarvestuse vormindamise ja kleepimise valemitega.
12 | Arvutustabelid ("leht 1"). Vahemik ("D3"). KopeeriArvutustabelid ("leht 2"). Vahemik ("D3"). KleebiSpecial xlPasteFormulas |
Pange tähele, kuidas numbrivorming on kadunud ja selle asemel kuvatakse lohakas ümardamata väärtus.
Selle asemel kasutage kleepimisvalemite ja numbrite vorminguid:
12 | Arvutustabelid ("leht 1"). Vahemik ("D3"). KopeeriArvutustabelid ("leht 2"). Vahemik ("D3"). KleebiSpecial xlPasteFormulasAndNumberFormats |
Nüüd näete, et ka numbrivorming on kleebitud, säilitades raamatupidamisvormingu.
Kleebi spetsiaalselt - ülevõtmine ja vahelejätmine
Paste Special - ülevõtmine
Paste Special Transpose võimaldab kleepida ja kleepida lahtreid, muutes orientatsiooni ülalt alla vasakule paremale (või vastupidi):
12 | Arvutustabelid ("leht 1"). Vahemik ("A1: A5"). KopeeriArvutustabelid ("Sheet1"). Vahemik ("B1"). PasteSpecial Transpose: = True |
Kleebi spetsiaalselt - jätke tühjad vahele
Toorikute vahelejätmine on pasta spetsiaalne valik, mida ei kasutata nii sageli kui peaks. See võimaldab kopeerimisel ja kleepimisel kopeerida ainult tühje lahtreid. Seega tühje lahtreid ei kopeerita.
Selles näites allpool. Kopeerime veeru A, teeme tavalise pasta veergu B ja jätame tühjad kleebi veergu C. Näete, et tühjad lahtrid ei kleebitud alloleval pildil veergu C.
123 | Arvutustabelid ("leht 1"). Vahemik ("A1: A5"). KopeeriArvutustabelid ("Leht1"). Vahemik ("B1"). KleebiSpecial SkipBlanks: = ValeArvutustabelid ("Sheet1"). Vahemik ("C1"). PasteSpecial SkipBlanks: = True |
Muud kleepimise erivalikud
Paste Special - Kommentaarid
1 | Arvutustabelid ("leht 1"). Vahemik ("A1"). Lehtede kopeerimine ("leht 1"). Vahemik ("E1"). KleebiSpecial xlPasteComments |
Paste Special - valideerimine
12 | Lehed ("Sheet1"). Vahemik ("A1: A4"). KopeeriArvutustabelid ("leht 1"). Vahemik ("B1: B4"). PasteSpecial xlPasteValidation |
Kleebi spetsiaalselt - kõik kasutavad allikateemat
123 | Töövihikud (1). Lehed ("leht 1"). Vahemik ("A1: A2"). KopeerimineTöövihikud (2). Lehed ("leht 1"). Vahemik ("A1"). KleebiTöövihikud (2). Lehed ("Sheet1"). Vahemik ("B1"). PasteSpecial xlPasteAllUsingSourceTheme |
Kleebi spetsiaalselt - kõik, välja arvatud piirid
123 | Vahemik ("B2: C3"). KopeeriVahemik ("E2"). PasteSpecialVahemik ("H2"). PasteSpecial xlPasteAllExceptBorders |
PasteSpecial - veeru laiused
Minu isiklik lemmik. PasteSpecial veerulaiused kopeerivad ja kleepivad veergude laiuse.
123 | Vahemik ("A1: A2"). KopeeriVahemik ("C1"). PasteSpecialVahemik ("E1"). PasteSpecial xlPasteColumnWidths |
PasteSpecial - kõik MergingConditionalFormats
123 | Vahemik ("A1: A4"). KopeeriVahemik ("C1"). PasteSpecialVahemik ("E1"). PasteSpecial xlPasteAllMergingConditionalFormats |