Comment concaténer des chaînes dans VBA (avec exemples)
Vous pouvez utiliser les méthodes suivantes pour concaténer des chaînes dans VBA :
Méthode 1 : concaténer deux chaînes
Sub ConcatStrings()
Range("C2") = Range("A2") & Range("B2")
End Sub
Cet exemple concatènera les chaînes dans les cellules A2 et B2 et affichera le résultat dans la cellule C2 .
Méthode 2 : concaténer deux chaînes avec un délimiteur
Sub ConcatStrings()
Range("C2") = Range("A2") & " " & Range("B2")
End Sub
Cet exemple concatènera les chaînes des cellules A2 et B2 avec un espace entre les chaînes et affichera le résultat dans la cellule C2 .
Méthode 3 : concaténer deux colonnes avec un délimiteur
Sub ConcatStrings()
Dim i As Integer
For i = 2 To 6
Cells(i, 3).Value = Cells(i, 1) & "_" & Cells(i, 2)
Next i
End Sub
Cet exemple concatènera les chaînes des plages A2:A6 et B2:B6 avec un trait de soulignement entre les chaînes et affichera les résultats dans les cellules C2:C6 .
Les exemples suivants montrent comment utiliser chacune de ces méthodes dans la pratique.
Exemple 1 : Concaténer deux chaînes
Nous pouvons créer la macro suivante pour concaténer deux chaînes :
Sub ConcatStrings()
Range("C2") = Range("A2") & Range("B2")
End Sub
Lorsque nous exécutons cette macro, nous recevons le résultat suivant :
Notez que les chaînes des cellules A2 et B2 ont été concaténées dans la cellule C2 .
Exemple 2 : concaténer deux chaînes avec un délimiteur
Nous pouvons créer la macro suivante pour concaténer deux chaînes avec un espace comme délimiteur :
Sub ConcatStrings()
Range("C2") = Range("A2") & " " & Range("B2")
End Sub
Lorsque nous exécutons cette macro, nous recevons le résultat suivant :
Notez que les chaînes des cellules A2 et B2 ont été concaténées avec un espace entre elles et que le résultat est affiché dans la cellule C2 .
Exemple 3 : Concaténer deux colonnes avec un délimiteur
Nous pouvons créer la macro suivante pour concaténer les chaînes en deux colonnes avec un trait de soulignement comme délimiteur :
Sub ConcatStrings()
Dim i As Integer
For i = 2 To 6
Cells(i, 3).Value = Cells(i, 1) & "_" & Cells(i, 2)
Next i
End Sub
Lorsque nous exécutons cette macro, nous recevons le résultat suivant :
Notez que les chaînes de la plage A2:A6 et B2:B6 ont été concaténées avec un trait de soulignement entre elles et que les résultats sont affichés dans la plage C2:C6 .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :
VBA : Comment compter les occurrences de caractères dans une chaîne
VBA : comment vérifier si une chaîne contient une autre chaîne
VBA : Comment compter les cellules avec un texte spécifique