VBA : Comment coller des valeurs uniquement sans formatage
Vous pouvez utiliser la syntaxe suivante dans VBA pour copier une plage spécifique de cellules et coller les valeurs uniquement dans un nouvel emplacement sans mise en forme :
Sub PasteNoFormatting()
Range("A1:D9").Copy
Range("A12").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End Sub
Cette macro particulière copiera les cellules de la plage A1:D9 et collera les valeurs des cellules sans aucun formatage dans la plage commençant à la cellule A12 .
Remarque : La ligne Application.CutCopyMode = False précise que le mode couper et copier doit être désactivé après l’exécution de la macro.
L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.
Exemple : coller les valeurs uniquement sans formatage à l’aide de VBA
Supposons que nous ayons l’ensemble de données suivant dans Excel qui contient des informations sur divers joueurs de basket-ball :
Supposons que nous souhaitions copier et coller toutes les valeurs de la plage A1: D9 vers un nouvel emplacement sans le formatage.
Nous pouvons créer la macro suivante pour ce faire :
Sub PasteNoFormatting()
Range("A1:D9").Copy
Range("A12").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End Sub
Lorsque nous exécutons cette macro, nous recevons le résultat suivant :
Notez que les valeurs des cellules d’origine ont été collées dans un nouvel emplacement sans aucun formatage.
Remarque : Vous pouvez trouver la documentation complète de la méthode VBA PasteSpecial ici .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :
VBA : Comment trouver la dernière ligne utilisée
VBA : Comment compter le nombre de lignes dans la plage
VBA : Comment compter le nombre de colonnes utilisées