Excel VBA klistra in värden
Copy & Paste är inte världens största jobb !!! Men att kopiera och klistra in med speciella alternativ kräver någon form av kunskap inom VBA. Det här är inte den enkla processen som enkel kopiera och klistra in. En av de viktiga klistra specialmetoderna är "Klistra in värden" i VBA.
Hur klistrar man in värden i Excel med VBA?
Exempel nr 1 - Användning av klistra in special
Titta till exempel på bilden nedan på kalkylbladet.

I cell B6 har vi använt formeln för att beräkna de totala försäljningsvärdena från B2 till B5-celler. Om jag kopierar och klistrar in cellen B6 till C6 får jag inte värdet 22 761, men jag får motsvarande formel.
För att utföra samma sak i VBA behöver vi kodningskunskap. Vi visar dig hur du klistrar in värden med VBA. Följ stegen nedan.
Steg 1: Kopiera cellen B6.
För att kopiera cellen B6, använd koden som Range (“B6”)

Steg 2: Välj målcellen. I detta fall C6-cell.
Som du kan se efter kopian frågar den "Destination." Detta är inget annat än var vill du klistra in, så välj "Destination" som Range ("C6")
Koda:
Sub Paste_Values () Range ("B6"). Copy Range ("C6") End Sub
Steg 3: Kör koden
Kör den här koden så får vi B6-kopian i C6.

Vi har bara formeln här.
Steg 4: Utför en Paste Special Method.
För att utföra den klistra in specialmetoden, låt oss titta på nedanstående syntax för klistra specialmetoden.

I klistra specialmetoden har vi flera metoder. Baserat på den operation vi gör, måste vi välja typen därefter.
För att förstå, låt oss dela koden i två rader.
Den första är att kopiera cell B6.

Nu i nästa rad skriver du målcellen som Range (“C6”)

Nu för att komma åt Klistra in särskild metod sätt en punkt och börja skriva bokstaven "P."

I ovanstående olika alternativ väljer du "Klistra in special" -metoden.

När du har valt metoden trycker du på mellanslagstangenten för att se de olika klistra in specialmetoder.

Välj "xlPasteValues" i denna mängd olika alternativ.

När du har valt alternativet trycker du på tabbtangenten för att automatiskt välja.
Koda:
Sub Paste_Values () Range ("B6"). Copy Range ("C6"). PasteSpecial xlPasteValues End Sub

Steg 5: Kör koden
Kör nu koden, vi ska bara få värdet på cellen B6 till cellen C6.

Om du märker kalkylbladet efter att ha kört koden är det fortfarande bara i kopieringsläget.


Detta kommer att inaktivera det kopierade kopieringsläget efter att klistra in specialmetoden har körts.
Exempel # 2 - Klistra in special med öglor
Klistra in special är lätt men när det gäller att använda detta som en del av en stor kod krävs en avancerad kodningsförmåga.
Titta till exempel på bilden nedan.

I ovanstående bild av kalkylbladet i kolumn "F" har vi en total kolumn, dvs. i F2-, F5-, F8-, F11- och F14-celler.
Nu är mitt krav att kopiera varje total cell från respektive cell och klistra in i kolumnen "H" med respektive celler.
Med hjälp av nedanstående kod, med VBA-loopar, kan vi göra detta.
Koda:
Sub Paste_Values1 () Dim k As Integer Dim j As Integer j = 2 For k = 1 To 5 Cells (j, 6). Copy Cells (j, 8). PasteSpecial xlPasteValues j = j + 3 Next k End Sub
Den här koden med klistra in specialalternativ kommer att utföra uppgiften att kopiera varje total cell och klistra in i kolumnen "H" med respektive celler.

Exempel # 3 - Kopiera från kalkylblad till ett annat
För att klistra in värden från ett kalkylblad till ett annat måste vi nämna båda kalkylarknamnen. Nedan följer ett exempel på det.
Sub Paste_Values2 () Arbetsblad ("Sheet1"). Range ("A1"). Copy Copy ("Sheet2"). Range ("A15") PasteSpecial xlPasteValues End Sub