VBA Concatenar cadenas de texto juntas (& - Ampersand)

Ya hemos repasado una introducción a las funciones de cadenas en nuestro tutorial Funciones de cadenas y subcadenas de VBA. Ahora veremos cómo concatenar cadenas de texto.

Concatenar cadenas

Puede usar el operador & en VBA para unir cadenas de texto.

1 MsgBox "Combinar" y "Texto"

Concatenar celdas

También puede concatenar celdas juntas. A continuación, tenemos las cadenas de texto en A1 y B1:

El siguiente código le muestra cómo unir cadenas de texto de la celda A1 y B1 usando el operador &, en la celda C1:

1 Rango ("C1"). Valor = Rango ("A1"). Valor y rango ("B1"). Valor

El resultado es:

Concatenar variables

Este es el procedimiento completo para concatenar dos celdas juntas usando variables de cadena.

1234567891011 Sub ConcatenateStrings ()Dim StringOne como StringDim StringTwo como cadenaStringOne = Rango ("A1"). ValorStringTwo = Rango ("B1"). ValorRango ("C1"). Valor = StringOne & StringTwoEnd Sub

Usar el operador & con espacios

Cuando desee incluir espacios, utilice & junto con ”“. El siguiente código le muestra cómo incluiría espacios:

123456789101112 Sub ConcatenatingStringsWithSpaces ()Dim StringOne como cadenaDim String Dos como cadenaDim StringThree como cadenaStringOne = "Esto es"StringTwo = "el texto"StringThree = StringOne & "" & StringTwoMsgBox StringThreeEnd Sub

El resultado de MessageBox es:

Uso del operador & para concatenar una comilla

Supongamos que su cadena de texto contiene una comilla, el siguiente código le muestra cómo incluir una comilla dentro de una cadena de texto:

12345678910111213 Sub ConcatenatingAQuotationMark ()Dim StringOne como cadenaDim String Dos como cadenaDim StringThree como cadenaStringOne = "Esta es la comilla"StringTwo = "" ""StringThree = StringOne & "" & StringTwoMsgBox StringThreeEnd Sub

El resultado es:

Poner cadenas en una nueva línea

Supongamos que tiene cinco cadenas de texto, puede poner cada cadena de texto en una nueva línea o párrafo, utilizando la función vbNewLine, vbCrLf, vbCr o Chr. El siguiente código le muestra cómo poner cada cadena de texto en una nueva línea:

123456789101112131415161718 Sub PuttingEachTextStringOnANewLine ()Dim StringOne como cadenaDim String Dos como cadenaDim StringThree como cadenaDim String Cuatro como cadenaDim StringFive como cadenaStringOne = "Esta es la primera cadena"StringTwo = "Esta es la segunda cadena"StringThree = "Esta es la tercera cadena"StringFour = "Esta es la cuarta cadena"StringFive = "Esta es la quinta cadena"MsgBox StringOne & vbNewLine & StringTwo & vbCrLf & StringThree & vbCr & StringFour & Chr (13) y StringFiveEnd Sub

El resultado es:

wave wave wave wave wave