Valori de lipire VBA Excel
Copy & Paste nu este cea mai mare slujbă din lume !!! Dar copierea și lipirea cu opțiuni speciale necesită un fel de cunoștințe în VBA. Acesta nu este procesul direct ca simplu copiere și lipire. Una dintre metodele speciale de lipire importante este „Paste Values” în VBA.
Cum se lipesc valori în Excel folosind VBA?
Exemplul # 1 - Utilizarea lipirii speciale
De exemplu, uitați-vă la imaginea de mai jos a foii de lucru.

În celula B6, am aplicat formula pentru a calcula valorile totale ale vânzărilor de la celulele B2 la B5. Acum, dacă copiez și lipesc celula B6 în C6, nu voi obține valoarea 22.761, dar voi primi formula corespunzătoare.
Pentru a efectua același lucru în VBA, avem nevoie de cunoștințe de codificare. Vă vom arăta cum să lipiți valorile folosind VBA. Urmați pașii de mai jos.
Pasul 1: Copiați celula B6.
Pentru a copia celula B6, utilizați codul ca Range („B6”)

Pasul 2: Selectați celula de destinație. În acest caz, celula C6.
După cum puteți vedea după copie, se întreabă „Destinație”. Aceasta nu este altceva decât unde doriți să lipiți, așa că selectați „Destinație” ca Interval („C6”)
Cod:
Sub Paste_Values () Range ("B6"). Copy Range ("C6") End Sub
Pasul 3: Rulați codul
Rulați acest cod, vom primi copia B6 în C6.

Aici avem doar formula.
Pasul 4: Efectuați o metodă specială de lipire.
Pentru a efectua metoda specială paste, să analizăm sintaxa de mai jos a metodei speciale paste.

În metoda specială paste, avem mai multe metode. Pe baza operației pe care o facem, trebuie să selectăm tipul în consecință.
Pentru a înțelege, să împărțim codul în două rânduri.
Primul este copierea celulei B6.

Acum, în rândul următor, scrieți celula de destinație ca Range („C6”)

Acum pentru a accesa Paste Special Method puneți un punct și începeți să tastați litera „P.”

În varietatea de opțiuni de mai sus, selectați metoda „Lipire specială”.

După selectarea metodei, apăsați tasta spațiu pentru a vedea diferitele metode speciale de lipire.

În această varietate de opțiuni, selectați „xlPasteValues”.

După selectarea opțiunii, apăsați tasta tab pentru a selecta automat.
Cod:
Sub Paste_Values () Range ("B6"). Copy Range ("C6"). PasteSpecial xlPasteValues End Sub

Pasul 5: Rulați codul
Acum rulați codul, ar trebui să obținem doar valoarea celulei B6 la celula C6.

Dacă observați foaia de lucru după ce ați rulat codul, aceasta este încă în modul copiere.


Aceasta va dezactiva modul de copiere tăiată după executarea metodei speciale de lipire.
Exemplul # 2 - Lipire specială cu bucle
Lipirea specială este ușoară, dar în ceea ce privește utilizarea acesteia ca parte a unui cod mare necesită un nivel avansat de abilități de codare.
De exemplu, uitați-vă la imaginea de mai jos.

În imaginea de mai sus a foii de lucru din coloana „F”, avem o coloană totală, adică în celulele F2, F5, F8, F11 și F14.
Acum cerința mea este să copiez fiecare celulă totală din celula respectivă și să lipesc în coloana „H” cu celulele respective.
Folosind codul de mai jos, cu bucle VBA, putem face acest lucru.
Cod:
Sub Paste_Values1 () Dim k As Integer Dim j As Integer j = 2 For k = 1 To 5 Cell (j, 6) .Copy Cell (j, 8) .PasteSpecial xlPasteValues j = j + 3 Next k End Sub
Acest cod cu opțiunea specială lipire va efectua sarcina de copiere a fiecărei celule totale și lipire în coloana „H” cu celulele respective.

Exemplul # 3 - Copiați din foaia de lucru în alta
Pentru a lipi valori dintr-o foaie de lucru în alta, trebuie să menționăm ambele nume ale foii de lucru. Mai jos este un exemplu în acest sens.
Sub Paste_Values2 () Foi de lucru ("Sheet1"). Range ("A1"). Copiați foi de lucru ("Sheet2"). Range ("A15"). PasteSpecial xlPasteValues End Sub