Vba: come incollare solo valori senza formattazione
Puoi utilizzare la seguente sintassi in VBA per copiare un intervallo specifico di celle e incollare i valori solo in una nuova posizione senza formattazione:
Sub PasteNoFormatting()
Range(" A1:D9 ").Copy
Range(" A12 ").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End Sub
Questa particolare macro copierà le celle nell’intervallo A1:D9 e incollerà i valori della cella senza alcuna formattazione nell’intervallo che inizia dalla cella A12 .
Nota : la riga Application.CutCopyMode = False specifica che la modalità taglia e copia deve essere disabilitata dopo l’esecuzione della macro.
L’esempio seguente mostra come utilizzare questa sintassi nella pratica.
Esempio: incolla solo i valori senza formattare utilizzando VBA
Supponiamo di avere il seguente set di dati in Excel che contiene informazioni su vari giocatori di basket:
Diciamo che vogliamo copiare e incollare tutti i valori nell’intervallo A1:D9 in una nuova posizione senza formattazione.
Per fare ciò possiamo creare la seguente macro:
Sub PasteNoFormatting()
Range(" A1:D9 ").Copy
Range(" A12 ").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End Sub
Quando eseguiamo questa macro, riceviamo il seguente output:
Tieni presente che i valori della cella originale sono stati incollati in una nuova posizione senza alcuna formattazione.
Nota : qui è possibile trovare la documentazione completa per il metodo VBA PasteSpecial .
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in VBA:
VBA: come trovare l’ultima riga utilizzata
VBA: come contare il numero di righe nell’intervallo
VBA: come contare il numero di colonne utilizzate