VBA zřetězí textové řetězce dohromady (& - Ampersand)

Už jsme prošli úvodem do řetězcových funkcí v našem tutoriálu o funkcích řetězců a podřetězců VBA. Nyní se podíváme na to, jak zřetězit textové řetězce.

Zřetězené řetězce

Ke spojení textových řetězců můžete použít operátor & ve VBA.

1 MsgBox „Sloučit“ a „Text“

Zřetězit buňky

Buňky můžete také spojit dohromady. Níže máme textové řetězce v A1 a B1:

Následující kód ukazuje, jak spojit textové řetězce z buňky A1 a B1 pomocí operátoru & v buňce C1:

1 Rozsah („C1“). Hodnota = Rozsah („A1“). Hodnota a rozsah („B1“). Hodnota

Výsledek je:

Zřetězení proměnných

Toto je úplný postup pro zřetězení dvou buněk dohromady pomocí řetězcových proměnných.

1234567891011 Sub ConcatenateStrings ()Dim StringOne jako řetězecDim StringTwo as StringStringOne = Rozsah ("A1"). HodnotaStringTwo = Rozsah ("B1"). HodnotaRozsah („C1“). Hodnota = StringOne & StringTwoEnd Sub

Použití & Operátoru s mezerami

Pokud chcete zahrnout mezery, které používáte, ve spojení s „“. Následující kód ukazuje, jak byste zahrnuli mezery:

123456789101112 Sub ConcatenatingStringsWithSpaces ()Dim StringOne As StringDim String Dva jako řetězecDim String Tři jako řetězecStringOne = "Toto je"StringTwo = "text"StringThree = StringOne & "" & StringTwoMsgBox StringThreeEnd Sub

Výsledkem MessageBox je:

Použití & Operátoru ke zřetězení uvozovek

Řekněme, že váš textový řetězec obsahuje uvozovku, následující kód vám ukáže, jak do textového řetězce zahrnout uvozovku:

12345678910111213 Sub ConcatenatingAQuotationMark ()Dim StringOne As StringDim String Dva jako řetězecDim String Tři jako řetězecStringOne = "Toto je uvozovka"StringTwo = "" ""StringThree = StringOne & "" & StringTwoMsgBox StringThreeEnd Sub

Výsledek je:

Uvedení řetězců na nový řádek

Řekněme, že máte pět textových řetězců, každý textový řetězec můžete vložit na nový řádek nebo odstavec pomocí funkce vbNewLine, vbCrLf, vbCr nebo Chr. Následující kód ukazuje, jak umístit každý textový řetězec na nový řádek:

123456789101112131415161718 Sub PuttingEachTextStringOnANewLine ()Dim StringOne As StringDim String Dva jako řetězecDim String Tři jako řetězecDim String Čtyři jako řetězecDim StringPět jako řetězecStringOne = "Toto je první řetězec"StringTwo = "Toto je druhý řetězec"StringThree = "Toto je třetí řetězec"StringFour = "Toto je čtvrtý řetězec"StringFive = "Toto je pátý řetězec"MsgBox StringOne & vbNewLine & StringTwo & vbCrLf & StringThree & vbCr & StringFour & Chr (13) & StringFiveEnd Sub

Výsledek je:

wave wave wave wave wave