Enganxa de còpia VBA | Principals maneres de copiar i enganxar a VBA (amb exemples)

Copiar enganxa a VBA és similar al que fem al full de treball Excel, com si poguem copiar un valor i enganxar-lo a una altra cel·la, també podem utilitzar enganxar especial per enganxar només els valors, de manera similar a VBA fem servir el mètode de còpia amb propietat d’interval a copieu un valor d’una cel·la a l’altra i per enganxar el valor fem servir la funció de full de càlcul enganxa especial o enganxa.

Com copiar enganxar a VBA?

A continuació es mostren alguns exemples de com copiar enganxar a Excel mitjançant VBA.

El més bàsic que fem a Excel és copiar, tallar i enganxar les dades d’una cel·la a una altra. No requereix cap presentació especial. Tanmateix, mentre s’aprèn la codificació VBA és important entendre el mateix concepte en el llenguatge de codificació. Copiar enganxa a VBA és la tasca rutinària que fem al dia a dia en excel. Per copiar primer, hem de decidir quina cel·la volem copiar.

Exemple 1: copieu i enganxeu valors mitjançant l'objecte d'interval

Podeu descarregar aquesta plantilla Excel enganxa VBA Copy Enganxar aquí: plantilla Excel VBA Copy Paste

Suposem que teniu la paraula "Excel VBA" a la cel·la A1.

Diguem, per exemple, que si voleu copiar la cel·la A1, podem utilitzar l’objecte VBA RANGE.

Codi:

 Subcòpia_Exemple () Interval ("A1"). Finalitzar sub 

En el moment que feu referència a la cel·la, podem veure-hi totes les propietats i mètodes. Seleccioneu el mètode "Copia”.

Codi:

 Subcòpia_Exemple () Interval ("A1"). Copia final Sub 

Després de seleccionar el mètode, premeu la tecla d'espai per veure l'argument del mètode de còpia.

Diu Destinació.

Això no és res més que on voleu copiar-enganxar valors a VBA sense seleccionar el mètode PEGAR.

Si enganxem al mateix full, podem seleccionar la cel·la mitjançant l’objecte Range. Diguem que si volem enganxar el valor a la cel·la B3 podem posar la destinació com a "Rang (" B3 ")".

Codi:

 Subcòpia_Exemple () Interval ("A1"). Destinació de la còpia: = Interval ("B3") Final Sub 

Això copiarà les dades de la cel·la A1 i s’enganxarà a la cel·la B3.

També podem utilitzar el mètode següent per enganxar les dades.

Codi:

 Subcòpia_Exemple () Interval ("A1"). Copia l'interval ("B3"). Seleccioneu ActiveSheet. 

En primer lloc, copiarem i seleccionarem les dades de la cel·la A1 i les enganxarem a la cel·la B3.

Exemple 2: copieu a un altre full de treball del mateix llibre

Ara bé, si volem copiar-enganxar el valor dels diferents fulls de càlcul mitjançant la macro VBA, a l’argument de destinació hem de fer referència al nom del full mitjançant l’objecte WORKSHEETS, a continuació, esmentem l’interval de cel·les del full de treball. El codi següent farà la feina.

Codi:

 Sub Copia_Exemple () Interval ("A1"). Destinació de la còpia: = Fulls de treball ("Full2"). Interval ("B3") Final Sub 

Si volem copiar les dades d’un full concret i voler enganxar-lo en un altre full concret, hem d’esmentar els dos noms dels fulls.

En primer lloc, hem d'esmentar el full de còpia.

Fulls de treball ("Full1"). Rang ("A1"). Copia

A continuació, a l’argument Destinació, hem d’esmentar el nom i l’interval del full de càlcul de la cel·la.

Destinació: = Fulls de treball ("Full2"). Interval ("B3")

Per tant, al codi li agradaria això.

Codi:

 Sub Copia_Exemple () Fulls de treball ("Full1"). Interval ("A1"). Destinació de la còpia: = Fulls de treball ("Full2"). Interval ("B3") Finalització secundària 

Exemple # 3: copieu d'un llibre a un altre llibre

Hem vist com copiar d’un full de treball a un altre full de treball del mateix llibre. Però també ho podem fer d’un llibre a un altre.

Mireu el codi següent.

Codi:

 Subcòpia_Exemple () Llibres de treball ("Llibre 1.xlsx"). Fulls de treball ("Full1"). Rang ("A1"). Copiar llibres de treball ("Llibre 2.xlsx"). Activeu ActiveWorkbook.Worksheets ("Full 2"). Seleccioneu ActiveSheet.Paste End Sub 

En primer lloc, copiarà les dades del full de treball "Full1" del llibre "Book1.xlsx" de la cel·la A1.

Llibres de treball ("Llibre 1.xlsx"). Fulls de treball ("Full1"). Rang ("A1"). Copia ”

Aleshores activarà el llibre de treball "Llibre 2.xlsx".

Quaderns de treball ("Llibre 2.xlsx"). Activeu

Al llibre de treball actiu, seleccionarà el full de treball "Full 2"

ActiveWorkbook.Worksheets ("Full 2"). Seleccioneu

Ara, al full actiu, s’enganxarà

ActiveSheet.Paste

Forma alternativa d’utilitzar Copiar enganxa a VBA

Tenim una manera alternativa de tenir les dades d’una cel·la a una altra. Suposem que teniu la paraula "Excel VBA" a la cel·la A1 i que necessiteu la mateixa per entrar a la cel·la B3.

Un dels mètodes que hem vist és utilitzar el mètode de copiar i enganxar VBA, ara us mostraré una de les maneres alternatives. Mireu el fragment de codi següent per entendre-ho.

Codi:

 Subcòpia_Exemple1 () Interval ("A1"). Valor = Interval ("B3"). Valor Final Sub 

L'anterior indica que el valor que hi hagi a la cel·la A1 hauria de ser igual al valor de la cel·la B3.

Rang ("A1"). Valor = Rang ("B3"). Valor

Tot i que no es tracta d’un mètode de copiar i enganxar, encara aporta més valor al nostre coneixement de codificació.

Principals formes de copiar i enganxar VBA com a valors

Ara veurem diferents maneres de copiar i enganxar els valors de VBA. Suposem que sou a la cel·la A1 tal com es mostra a la imatge següent.

  • Si volem copiar i enganxar, hem de fer referència a la cel·la aquí, sinó que només podem utilitzar una propietat de Selecció. Mètode de còpia.

Codi:

 Subcòpia_Exemple1 () Selecció. Destinació de la còpia: = Interval ("B3") Final Sub 

O

 Subcòpia_Exemple1 () ActiveCell.Copy Destinació: = Rang ("B3") Final Sub 
  • Si voleu copiar tot l’interval utilitzat del full de càlcul, podeu utilitzar el codi següent.

Codi:

 Subcòpia_Exemple2 () Fulls de treball ("Full1"). UsedRange.Copy Destination: = Fulls de treball ("Full2"). Interval ("A1") Finalització secundària 

Això copiarà tot l'interval utilitzat al full de treball "Full1" i enganxarà el mateix al full de treball "Full2"