VBA Concatenate Text Strings Together (& - Ampersand)

Vi har redan gått igenom en introduktion till strängfunktioner i vår VBA Strings and Substrings Functions -handledning. Vi ska nu titta på hur man sammanfogar textsträngar.

Koppla samman strängar

Du kan använda & -operatorn i VBA för att ansluta textsträngar.

1 MsgBox "Slå ihop" och "Text"

Koppla ihop celler

Du kan också sammanfoga celler tillsammans. Nedan har vi textsträngarna i A1 och B1:

Följande kod visar hur du ansluter textsträngar från cell A1 och B1 med & -operatorn i cell C1:

1 Område ("C1"). Värde = intervall ("A1"). Värde och intervall ("B1"). Värde

Resultatet är:

Koppla ihop variabler

Detta är den fullständiga proceduren för att sammanfoga två celler tillsammans med hjälp av strängvariabler.

1234567891011 Sub ConcatenateStrings ()Dim StringOne som StringDim StringTwo som StringStringOne = Range ("A1"). VärdeStringTwo = Range ("B1"). VärdeOmråde ("C1"). Värde = StringOne & StringTwoAvsluta Sub

Använda & Operator med mellanslag

När du vill inkludera mellanslag använder du & i samband med ”“. Följande kod visar hur du skulle inkludera mellanslag:

123456789101112 Sub ConcatenatingStringsWithSpaces ()Dim StringOne As StringDim StringTwo As StringDim StringThree As StringStringOne = "Detta är"StringTwo = "texten"StringThree = StringOne & "" & StringTwoMsgBox StringThreeAvsluta Sub

MessageBox -resultatet är:

Använd & operatören för att sammanfoga ett citattecken

Låt oss säga att din textsträng innehåller ett citattecken, följande kod visar hur du inkluderar ett citattecken i en textsträng:

12345678910111213 Sub ConcatenatingAQuotationMark ()Dim StringOne As StringDim StringTwo As StringDim StringThree As StringStringOne = "Detta är citattecken"StringTwo = "" ""StringThree = StringOne & "" & StringTwoMsgBox StringThreeAvsluta Sub

Resultatet är:

Att sätta strängar på en ny rad

Låt oss säga att du har fem textsträngar, du kan sätta varje textsträng på en ny rad eller ett stycke, antingen med funktionen vbNewLine, vbCrLf, vbCr eller Chr. Följande kod visar hur du lägger varje textsträng på en ny rad:

123456789101112131415161718 Sub PuttingEachTextStringOnANewLine ()Dim StringOne As StringDim StringTwo As StringDim StringThree As StringDim StringFour As StringDim StringFive As StringStringOne = "Detta är den första strängen"StringTwo = "Detta är den andra strängen"StringThree = "Detta är den tredje strängen"StringFour = "Detta är den fjärde strängen"StringFive = "Detta är den femte strängen"MsgBox StringOne & vbNyLine & StringTvå & vbCrLf & StringThree & vbCr & StringFour & Chr (13) & StringFiveAvsluta Sub

Resultatet är:

wave wave wave wave wave