Excel VBA Liitä arvot
Copy & Paste ei ole maailman suurin työ !!! Mutta kopiointi ja liittäminen erityisvaihtoehdoilla vaatii jonkinlaista tietoa VBA: sta. Tämä ei ole yksinkertainen kopiointi ja liittäminen. Yksi tärkeistä pastan erikoismenetelmistä on “Liitä arvot” VBA: ssa.
Kuinka liittää arvot Exceliin VBA: n avulla?
Esimerkki # 1 - Liitä erityinen
Katso esimerkiksi alla olevaa laskentataulukon kuvaa.
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba_2.jpg.webp)
Solussa B6 olemme soveltaneet kaavaa laskemaan kokonaismyyntiarvot B2: sta B5-soluihin. Jos kopioin ja liitän solun B6 C6: een, en saa arvoa 22761, mutta saan vastaavan kaavan.
Tarvitsemme koodaustiedot voidaksemme suorittaa saman asian VBA: ssa. Näytämme sinulle kuinka liittää arvoja VBA: n avulla. Seuraa alla olevia ohjeita.
Vaihe 1: Kopioi solu B6.
Jos haluat kopioida solun B6, käytä koodia alueena (“B6”)
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba_3.jpg.webp)
Vaihe 2: Valitse kohdesolu. Tässä tapauksessa C6-solu.
Kuten kopion jälkeen näet, se kysyy "Kohde". Tämä ei ole muuta kuin mihin haluat liittää, joten valitse alueeksi "Kohde" ("C6")
Koodi:
Sub Paste_Values () -alue ("B6"). Kopiointialue ("C6") End Sub
Vaihe 3: Suorita koodi
Suorita tämä koodi, jolloin saamme B6-kopion C6: ssa.
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba.gif)
Saimme täältä vain kaavan.
Vaihe 4: Suorita Liitä erityinen menetelmä.
Suorita liitä erityinen menetelmä, katsotaan alla syntaksia liittää erityistä menetelmää.
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba_4.jpg.webp)
Liitä erityinen menetelmä, meillä on useita menetelmiä. Suoritettavan toiminnan perusteella meidän on valittava tyyppi vastaavasti.
Ymmärrämme, jaetaan koodi kahteen riviin.
Ensimmäinen on kopiointi solu B6.
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba_5.jpg.webp)
Kirjoita nyt seuraavalle riville kohdesolu alueeksi (“C6”)
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba_6.jpg.webp)
Nyt pääset Liitä erityinen menetelmä -toimintoon laita piste ja ala kirjoittaa "P" -kirjainta.
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba_7.jpg.webp)
Valitse yllä olevista vaihtoehdoista Liitä erityinen -menetelmä.
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba_8.jpg.webp)
Kun olet valinnut menetelmän, osoita välilyöntiä nähdäksesi erilaiset erikoismenetelmät.
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba_9.jpg.webp)
Valitse tässä vaihtoehtovalikossa ”xlPasteValues”.
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba_10.jpg.webp)
Kun olet valinnut vaihtoehdon, napsauta sarkainnäppäintä valitaksesi automaattisen valinnan.
Koodi:
Sub Paste_Values () -alue ("B6"). Copy Range ("C6"). PasteSpecial xlPasteValues End Sub
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba_11.jpg.webp)
Vaihe 5: Suorita koodi
Suorita nyt koodi, meidän pitäisi saada vain solun B6 arvo soluun C6.
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba_2.gif)
Jos huomaat laskentataulukon koodin suorittamisen jälkeen, se on edelleen vain kopiointitilassa.
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba_12.jpg.webp)
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba_13.jpg.webp)
Tämä poistaa leikatun kopiointitilan käytöstä, kun liitä erikoismenetelmä on suoritettu.
Esimerkki # 2 - Liitä erityinen silmukoilla
Liitä erityinen on helppoa, mutta sen käyttäminen suuren koodin osana vaatii edistyneen tason koodaustaitoja.
Katso esimerkiksi alla olevaa kuvaa.
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba_14.jpg.webp)
Sarakkeen ”F” taulukon yllä olevassa kuvassa on kokonaissarake, ts. F2-, F5-, F8-, F11- ja F14-soluissa.
Vaatimukseni on nyt kopioida kukin solu vastaavasta solusta ja liittää sarakkeeseen "H" vastaavilla soluilla.
Alla olevan koodin avulla voimme tehdä tämän VBA-silmukoilla.
Koodi:
Sub Paste_Values1 () Dim k kuten kokonaisluku Dim j As kokonaisluku j = 2 for k = 1 - 5 solua (j, 6). Kopioi solut (j, 8) .PasteSpecial xlPasteValues j = j + 3 Seuraava k End Sub
Tämä koodi, jolla on erityinen liitä -vaihtoehto, suorittaa tehtävän kopioida kaikki solut ja liittää sarakkeeseen “H” vastaavien solujen kanssa.
![](https://cdn.know-base.net/6457411/vba_paste_values_top_3_tips_to_copy_paste_values_using_vba_3.gif)
Esimerkki # 3 - Kopioi laskentataulukosta toiseen
Arvojen liittämiseksi taulukosta toiseen meidän on mainittava molemmat laskentataulukoiden nimet. Alla on esimerkki siitä.
Aliliitä_arvot2 () Taulukot ("Arkki1"). Alue ("A1"). Kopioi laskentataulukot ("Arkki2"). Alue ("A15").