Nous avons déjà passé en revue une introduction aux fonctions de chaîne dans notre didacticiel sur les fonctions de chaînes et de sous-chaînes VBA. Nous allons maintenant voir comment concaténer des chaînes de texte.
Concaténer des chaînes
Vous pouvez utiliser l'opérateur & dans VBA pour joindre des chaînes de texte.
1 | MsgBox "Fusionner" & "Texte" |
Concaténer les cellules
Vous pouvez également concaténer des cellules ensemble. Ci-dessous, nous avons les chaînes de texte en A1 et B1 :
Le code suivant vous montre comment joindre des chaînes de texte à partir des cellules A1 et B1 à l'aide de l'opérateur &, dans la cellule C1 :
1 | Plage("C1").Valeur = Plage("A1").Valeur & Plage("B1").valeur |
Le résultat est:
Concaténer les variables
Il s'agit de la procédure complète pour concaténer deux cellules à l'aide de variables de chaîne.
1234567891011 | Sous-chaînes de concaténation()Dim StringOne en tant que chaîneDim StringTwo en tant que chaîneStringOne = Range("A1").ValeurChaîneDeux = Plage("B1").ValeurRange("C1").Valeur = StringOne & StringTwoFin du sous-marin |
Utilisation de l'opérateur & avec des espaces
Lorsque vous souhaitez inclure des espaces que vous utilisez & en conjonction avec " ". Le code suivant vous montre comment inclure des espaces :
123456789101112 | Sous-concaténer des chaînes avec des espaces ()Dim StringOne en tant que chaîneDim StringDeux en tant que chaîneDim StringTrois en tant que chaîneStringOne = "C'est"StringDeux = "le texte"ChaîneTrois = ChaîneUn & " " & ChaîneDeuxMsgBox ChaîneTroisFin du sous-marin |
Le résultat MessageBox est :
Utilisation de l'opérateur & pour concaténer un guillemet
Supposons que votre chaîne de texte contienne un guillemet, le code suivant vous montre comment inclure un guillemet dans une chaîne de texte :
12345678910111213 | Sous-concaténerAQuotationMark()Dim StringOne en tant que chaîneDim StringDeux en tant que chaîneDim StringTrois en tant que chaîneStringOne = "Ceci est le guillemet"ChaîneDeux = """"ChaîneTrois = ChaîneUn & " " & ChaîneDeuxMsgBox ChaîneTroisFin du sous-marin |
Le résultat est:
Mettre des cordes sur une nouvelle ligne
Disons que vous avez cinq chaînes de texte, vous pouvez mettre chaque chaîne de texte sur une nouvelle ligne ou un nouveau paragraphe, en utilisant soit la fonction vbNewLine, vbCrLf, vbCr ou Chr. Le code suivant vous montre comment placer chaque chaîne de texte sur une nouvelle ligne :
123456789101112131415161718 | Sub PuttingEachTextStringOnANewLine()Dim StringOne en tant que chaîneDim StringDeux en tant que chaîneDim StringTrois en tant que chaîneDim StringQuatre en tant que chaîneDim StringCinq en tant que chaîneStringOne = "Ceci est la première chaîne"StringTwo = "Ceci est la deuxième chaîne"StringThree = "Ceci est la troisième chaîne"StringFour = "Ceci est la quatrième chaîne"StringFive = "Ceci est la cinquième chaîne"MsgBox StringOne & vbNewLine & StringTwo & vbCrLf & StringThree & vbCr & StringFour & Chr(13) & StringFiveFin du sous-marin |
Le résultat est: