Vi har allerede gået over en introduktion til strengfunktioner i vores VBA -strenge- og understringsfunktions -tutorial. Vi skal nu se på, hvordan vi sammenkæder tekststrenge.
Sammenkædede strenge
Du kan bruge & -operatoren i VBA til at slutte tekststrenge.
1 | MsgBox "Flet" og "Tekst" |
Sammenkædede celler
Du kan også sammenkæde celler sammen. Nedenfor har vi tekststrengene i A1 og B1:
Følgende kode viser dig, hvordan du forbinder tekststrenge fra celle A1 og B1 ved hjælp af & -operatoren i celle C1:
1 | Område ("C1"). Værdi = Område ("A1"). Værdi og område ("B1"). Værdi |
Resultatet er:
Sammenkædede variabler
Dette er den fulde procedure for at sammenkoble to celler sammen ved hjælp af strengvariabler.
1234567891011 | Sub ConcatenateStrings ()Dim StringOne som strengDim streng to som strengStringOne = Range ("A1"). VærdiStringTwo = Range ("B1"). VærdiOmråde ("C1"). Værdi = StringOne & StringTwoAfslut Sub |
Brug af & Operator med mellemrum
Når du vil inkludere mellemrum, bruger du & i forbindelse med ”“. Følgende kode viser dig, hvordan du vil inkludere mellemrum:
123456789101112 | Sub ConcatenatingStringsWithSpaces ()Dim StringOne As StringDim streng to som strengDim StringThree As StringStringOne = "Dette er"StringTwo = "teksten"StringThree = StringOne & "" & StringTwoMsgBox StringThreeAfslut Sub |
MessageBox -resultatet er:
Brug & operatøren til at sammenkoble et citatmærke
Lad os sige, at din tekststreng indeholder et anførselstegn, følgende kode viser dig, hvordan du inkluderer et anførselstegn i en tekststreng:
12345678910111213 | Sub ConcatenatingAQuotationMark ()Dim StringOne As StringDim streng to som strengDim StringThree As StringStringOne = "Dette er anførselstegnet"StringTwo = "" "" "StringThree = StringOne & "" & StringTwoMsgBox StringThreeAfslut Sub |
Resultatet er:
Sætte strenge på en ny linje
Lad os sige, at du har fem tekststrenge, du kan sætte hver tekststreng på en ny linje eller et afsnit ved hjælp af enten funktionen vbNewLine, vbCrLf, vbCr eller Chr. Følgende kode viser dig, hvordan du sætter hver tekststreng på en ny linje:
123456789101112131415161718 | Sub PuttingEachTextStringOnANewLine ()Dim StringOne As StringDim streng to som strengDim StringThree As StringDim StringFour As StringDim StringFive As StringStringOne = "Dette er den første streng"StringTwo = "Dette er den anden streng"StringThree = "Dette er den tredje streng"StringFour = "Dette er den fjerde streng"StringFive = "Dette er den femte streng"MsgBox StringOne & vbNyLine & StringTo & vbCrLf & StringThree & vbCr & StringFour & Chr (13) & StringFiveAfslut Sub |
Resultatet er: