VBA : comment coller des valeurs et conserver le formatage



Vous pouvez utiliser la syntaxe suivante dans VBA pour copier une plage de cellules et coller les valeurs ainsi que le formatage source vers un nouvel emplacement :

Sub PasteWithFormatting()

Range("A1:C11").Copy
Range("A13").PasteSpecial Paste:=xlPasteAllUsingSourceTheme
Application.CutCopyMode = False

End Sub

Cette macro particulière copiera les cellules de la plage A1:C11 et collera les valeurs des cellules avec leur formatage dans la plage commençant à la cellule A13 .

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 et conserver le 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: C11 vers un nouvel emplacement et conserver le formatage.

Nous pouvons créer la macro suivante pour ce faire :

Sub PasteWithFormatting()

Range("A1:C11").Copy
Range("A13").PasteSpecial Paste:=xlPasteAllUsingSourceTheme
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 avec leur mise en forme dans la plage de cellules commençant à la cellule A13 .

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 coller des valeurs uniquement sans formatage
VBA : Comment copier des lignes visibles sur une autre feuille
VBA : copier des lignes dans une autre feuille en fonction de critères

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *