Taglia, copia e incolla da una macro - Esempi di codice VBA

In questo tutorial imparerai diversi metodi per copiare e incollare e tagliare e incollare utilizzando una macro VBA. Leggi il tutorial compagno su Value Pasting e PasteSpecial per opzioni di copia e incolla più avanzate.

Per utilizzare questo codice: Aprire l'editor di Visual Basic (Alt + F11), inserire un nuovo modulo (Inserisci > Modulo) e copia e incolla il codice desiderato nel modulo.

Copia (taglia) e incolla una singola cella

Questo esempio copia o taglia e incolla una singola cella, da A1 a B1:

123456789 Sub Paste_OneCell()"Copia e incolla singola cella"Intervallo ("A1"). Copia Intervallo ("B1")"Taglia e incolla singola cella"Intervallo ("A1"). Intervallo di taglio ("B1")Fine sottotitolo

Copia selezione

Se vuoi copiare la selezione attiva usa questo:

123456789101112 Sub CopySelection()"Incolla in un intervallo definito"Intervallo di selezione.copia ("b1")'Offset Incolla (sposta 2 celle in basso e 1 a destra)Selezione.copiaSelection.offset(2,1).pasteApplication.CutCopyMode = FalseFine sottotitolo

Copia (taglia) e incolla un intervallo di celle

Questo esempio copia o taglia e incolla un intervallo di celle, A1:A3 su B1:B3:

123456789 Sub Paste_Range()"Copia e incolla un intervallo di celle"Intervallo ("A1: A3"). Intervallo di copia ("B1: B3")"Taglia e incolla un intervallo di celle"Intervallo ("A1: A3"). Intervallo di taglio ("B1: B3")Fine sottotitolo

Copia (taglia) e incolla un'intera colonna

Di seguito dimostreremo un paio di rapidi esempi. Leggi il nostro articolo su Copia e incolla di righe e colonne per esempi dettagliati, spiegazioni e variazioni.

Questo esempio copia o taglia e incolla un'intera colonna, da A a B:

12345678910 Sub PasteOneColumn()"Copia e incolla colonna"Intervallo ("A: A"). Copia Intervallo ("B: B")Colonna "Taglia e incolla"Intervallo ("A: A"). Intervallo di taglio ("B: B")Fine sottotitolo

Copia (taglia) e incolla un'intera riga

Questo esempio copia o taglia e incolla un'intera riga, da 1 a 2:

12345678910 Sub Paste_OneRow()"Copia e incolla riga"Intervallo ("1:1"). Intervallo di copia ("2:2")"Taglia e incolla riga"Intervallo ("1:1"). Intervallo di taglio ("2:2")Fine sottotitolo

Copia (taglia) e incolla in un altro foglio di lavoro o cartella di lavoro

1234567891011121314 Sub Paste_Other_Sheet_or_Book()"Taglia o copia e incolla in un altro foglio di lavoro"Fogli di lavoro("foglio1").Intervallo("A1").Copia Fogli di lavoro("foglio2").Intervallo("B1") 'CopiaFogli di lavoro ("foglio1"). Intervallo ("A1"). Fogli di lavoro tagliati ("foglio2"). Intervallo ("B1") 'Taglia"Taglia o copia e incolla in un'altra cartella di lavoro"Cartelle di lavoro ("book1.xlsm"). Fogli di lavoro ("sheet1"). Intervallo ("A1"). Copia _Workbooks("book2.xlsm").Worksheets("sheet1").Intervallo("B1") 'CopiaCartelle di lavoro ("book1.xlsm"). Fogli di lavoro ("sheet1"). Intervallo ("A1"). Taglia _Cartelle di lavoro ("book2.xlsm"). Fogli di lavoro ("sheet1"). Intervallo ("B1") 'TagliaApplication.CutCopyMode = FalseFine sottotitolo

Valore Incolla

Normalmente, quando copi e incolli incolli tutte le proprietà di una cella: formattazione, formule, ecc… Value Pasting ti consente di copiare e incollare i valori delle celle e nient'altro. Il modo più semplice per incollare valori in VBA è definire direttamente il valore della cella:

123456789101112131415 Sub ValuePaste()"Celle Incolla valore"Intervallo("B1").valore = Intervallo("A1").valoreIntervallo("B1:B3").valore = Intervallo("A1:A3").valore"Imposta valori tra fogli di lavoro"Fogli di lavoro("foglio2").intervallo("A1").valore = Fogli di lavoro("foglio1").intervallo("A1").valore"Imposta valori tra cartelle di lavoro"Cartelle di lavoro ("book2.xlsm"). Fogli di lavoro ("foglio1"). intervallo ("A1"). valore = _Cartelle di lavoro ("libro1.xlsm"). Fogli di lavoro ("foglio1"). intervallo ("A1"). valoreApplication.CutCopyMode = FalseFine sottotitolo

Incolla speciale

Incolla speciale consente di copiare e incollare proprietà specifiche delle celle (esempi: formati, valori, larghezze delle colonne, ecc.). Consente inoltre di eseguire operazioni di incolla speciali (esempi: saltare spazi vuoti, trasporre). Vedremo diversi esempi di seguito, ma per un approfondimento leggi il nostro tutorial su Value Pasting e Paste Special.

12345678910111213141516171819 Sub PasteSpecial()'Esegui un'operazione speciale Incolla:Intervallo ("A1"). Copia"Incolla formati"Range("B1").PasteSpecial Paste:=xlPasteFormats"Incolla larghezze colonne"Range("B1").PasteSpecial Paste:=xlPasteColumnWidths"Incolla formule"Range("B1").PasteSpecial Paste:=xlPasteFormulas'Esegui più operazioni speciali di incollaggio contemporaneamente:Intervallo ("A1"). Copia"Incolla formati e trasponi"Range("B1").PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:= _Falso, Trasponi:=VeroApplication.CutCopyMode = FalseFine sottotitolo

Cancella appunti

Dopo aver copiato e incollato potresti voler cancellare gli appunti (lo facciamo in alcuni degli esempi di codice sopra). Per cancellare gli appunti di Excel, impostiamo Application.CutCopyMode su False:

1 Application.CutCopyMode = False

Questo cancellerà gli appunti di Excel. Tuttavia, non cancellerà gli Appunti di Windows. Per cancellare gli appunti di Windows, segui le istruzioni qui.

Aiuterete lo sviluppo del sito, condividere la pagina con i tuoi amici

wave wave wave wave wave