Incolla VBA (Guida passo passo) - Come incollare i dati utilizzando il codice VBA?

Incolla VBA di Excel

Esistono tre modi diversi per incollare alcuni dati da una posizione all'altra in un foglio di lavoro utilizzando VBA, il primo metodo è quello di riferire normalmente i valori da una cella a un'altra cella utilizzando l'operatore di assegnazione, un altro metodo è utilizzare la funzione Incolla e il terzo metodo è utilizzando la funzione pastespecial.

Copia e incolla è la cosa più comune che facciamo giorno dopo giorno nel nostro posto di lavoro. In un normale foglio di calcolo, non abbiamo bisogno di presentazioni speciali. Nella programmazione VBA, è molto importante comprendere il concetto del metodo "PASTE" per comprendere il programma per passare al livello successivo.

Comprendi il metodo VBA Paste registrando una macro

Per iniziare il procedimento capiamo come funziona il metodo incolla registrando una semplice macro. Ho inserito un valore nella cella A1 come mostrato nell'immagine sottostante.

Ora ti mostrerò il metodo per copiare e incollare dalla cella A1 ad A3. Segui i passaggi seguenti per registrare una macro.

Passaggio 1: fare clic su Registra macro nella scheda sviluppatore Excel.

Passaggio 2: nel momento in cui fai clic sulla macro di registrazione, ti mostrerà il nome della macro predefinita. A partire da ora, fai clic su OK.

Passaggio 3: nel momento in cui fai clic su, ok, inizia a registrare le attività che svolgi. La prima cosa che devi fare è selezionare la cella A1 da copiare.

Passaggio 4: ora premi Ctrl + C per copiare la cella selezionata.

Passaggio 5: ora seleziona la cella A3 in cui dobbiamo incollare il valore copiato.

Passaggio 6: ora, incolla premendo Ctrl + V.

Passaggio 7: ora interrompi le registrazioni.

Vai a un editor visuale di base per vedere le registrazioni. Di seguito è uscita la registrazione.

La prima cosa che abbiamo fatto qui è "abbiamo selezionato la cella A1", quindi il codice per questa attività è Intervallo ("A1") Seleziona

La prossima attività è che abbiamo copiato la cella A1. Puoi notare qui che il codice non è Range ("A1"). Copia piuttosto dice Selezione. Copia, questo perché nel momento in cui selezioni la cella, diventa una cella attiva o una selezione. Quindi è indicato come selezione. Copia .

La terza attività è stata che abbiamo selezionato la cella A1 da incollare, quindi il codice è Range ("A3"). Selezionare

L'attività finale è che abbiamo incollato il valore nella cella. Qui dice Foglio attivo perché nel momento in cui selezioni la cella diventa una cella attiva del foglio attivo. Quindi il codice è "ActiveSheet.Paste"

Ecco come funziona il metodo Paste in VBA.

Formula

Di seguito è riportata la formula per il metodo Incolla VBA:

Expression.Paste (destinazione, collegamento)

Un'espressione non è altro che il nome del foglio di lavoro che desideri incollare. Per comprendere meglio l'oggetto foglio di lavoro, leggi il nostro articolo sul "Foglio di lavoro VBA".

Puoi fare riferimento all'altro foglio di lavoro per nome. Se desideri incollare nello stesso foglio di lavoro in cui hai copiato, puoi fare riferimento al foglio corrente con "Foglio attivo".

Destinazione: dopo aver menzionato il nome del foglio di lavoro, dobbiamo fare riferimento all'indirizzo della cella di destinazione. Ad esempio, se desideri incollare nel foglio di lavoro "Dati vendita" e nelle celle da A5 ad A10, di seguito è riportato il codice di esempio.

Fogli di lavoro ("Dati di vendita"). Intervallo ("A5: A10")

Se ignori questo argomento, qualunque sia la cella attiva verrà considerata come cella di destinazione.

Collegamento: se si desidera creare un collegamento all'intervallo copiato, è possibile fornire l'argomento come VERO oppure FALSO.

Esempi di metodo Paste in Excel VBA

Di seguito sono riportati gli esempi del metodo Incolla VBA di Excel.

Esempio n. 1: incolla nello stesso foglio di lavoro di Excel

Vediamo ora l'utilizzo del metodo Incolla VBA nello stesso foglio. Ad esempio, una dimostrazione, ho pochi valori dalla cella A1 ad A5.

Ora voglio copiarlo e incollarlo da C1 a C5. Segui i passaggi seguenti per scrivere il codice da solo.

Passaggio 1: prima di pubblicare qualsiasi cosa, la prima cosa che dobbiamo fare è copiare l'intervallo di dati. Quindi copia l'intervallo da A1 ad A5.

Codice:

Sub Paste_Example1 () Intervallo ("A1: A5"). Copia End Sub

Passaggio 2: dopo la copia, è necessario specificare dove si incolla. Per fare questo prima, dobbiamo specificare il nome del foglio di lavoro. In questo caso, poiché stiamo incollando nello stesso foglio, usa l'oggetto Foglio attivo.

Codice:

Sub Paste_Example1 () Range ("A1: A5"). Copia ActiveSheet.Paste End Sub

Passaggio 3: dopo aver selezionato il metodo di incolla, è necessario specificare anche la destinazione. Quindi la destinazione sarà l'intervallo da C1 a C5.

Codice:

Sub Paste_Example1 () Range ("A1: A5"). Copia ActiveSheet.Paste Destination: = Range ("C1: C5") End Sub

Passaggio 4: ora, non voglio creare alcun collegamento a questo metodo di incolla VBA, quindi ignoro l'argomento successivo.

Ora esegui questo codice usando il tasto F5 o manualmente, copierà da A1 ad A5 e incollerà da C1 a C5.

Se guardi i valori da C1 a C5, queste aree di valori si trovano in una cella da A1 ad A5. Quindi questo metodo di incolla VBA copia tutto e incolla tutto.

Ora userò l'argomento LINK per vedere come funziona. Per l'argomento del LINK, ho fornito TRUE.

Codice:

Sub Paste_Example1 () Intervallo ("A1: A5"). Copia collegamento ActiveSheet.Paste: = True End Sub

Questo creerà un collegamento alla cella da A1 ad A5.

Quindi ha creato un collegamento. Una mancanza notevole è la formattazione delle celle qui. Non ha incollato nessuno stile di formattazione.

Esempio n. 2: incolla in un foglio di lavoro Excel diverso

La copia da un foglio di lavoro a un altro foglio sto richiede i nomi dei fogli di lavoro. Supponiamo che tu voglia copiare i dati dal foglio "Primo foglio" e che desideri incollare nel foglio "Secondo foglio" di seguito è il modo di fare riferimento ai fogli.

Codice:

Sub Paste_Example2 () Worksheets ("First Sheet"). Range ("A1: A5"). Copy Worksheets ("Second Sheet"). Paste Destination: = Range ("C1: C5") End Sub

Questo copierà i dati da A1 ad A5 dal nome del foglio chiamato "Nome", quindi incollerà il foglio "Secondo foglio" nell'intervallo da C1 a C5.

È possibile scaricare il modello Incolla VBA qui: - Modello Excel Incolla VBA

Articoli interessanti...