Abbiamo già esaminato un'introduzione alle funzioni stringa nel nostro tutorial VBA Strings and Substrings Functions. Ora vedremo come concatenare le stringhe di testo.
Concatena stringhe
È possibile utilizzare l'operatore & in VBA per unire stringhe di testo.
1 | MsgBox "Unisci" e "Testo" |
Concatena celle
Puoi anche concatenare le celle insieme. Di seguito, abbiamo le stringhe di testo in A1 e B1:
Il codice seguente mostra come unire stringhe di testo dalla cella A1 e B1 utilizzando l'operatore &, nella cella C1:
1 | Intervallo ("C1"). Valore = Intervallo ("A1"). Valore e intervallo ("B1"). valore |
Il risultato è:
Concatena variabili
Questa è la procedura completa per concatenare due celle utilizzando variabili stringa.
1234567891011 | SubconcatenateStrings()Dim StringOne come StringDim StringDue come StringStringOne = Intervallo ("A1"). ValoreStringDue = Intervallo("B1").ValoreIntervallo ("C1"). Valore = StringUno & StringDueFine sottotitolo |
Utilizzo dell'operatore & con gli spazi
Quando vuoi includere spazi che usi & insieme a " ". Il codice seguente mostra come includere gli spazi:
123456789101112 | Sub ConcatenatingStringsWithSpaces()Dim StringOne As StringDim StringDue As StringDim StringTre come stringaStringOne = "Questo è"StringTwo = "il testo"Stringa Tre = Stringa Uno & " " & Stringa DueMsgBox StringThreeFine sottotitolo |
Il risultato di MessageBox è:
Utilizzo dell'operatore & per concatenare le virgolette
Supponiamo che la tua stringa di testo contenga una virgoletta, il codice seguente mostra come includere una virgoletta all'interno di una stringa di testo:
12345678910111213 | Sub ConcatenatingAQuotationMark()Dim StringOne As StringDim StringDue As StringDim StringTre come stringaStringOne = "Questa è la virgoletta"StringDue = """"Stringa Tre = Stringa Uno & " " & Stringa DueMsgBox StringThreeFine sottotitolo |
Il risultato è:
Mettere le stringhe su una nuova riga
Supponiamo che tu abbia cinque stringhe di testo, puoi mettere ogni stringa di testo su una nuova riga o paragrafo, usando la funzione vbNewLine, vbCrLf, vbCr o Chr. Il codice seguente mostra come inserire ogni stringa di testo su una nuova riga:
123456789101112131415161718 | Sub PuttingEachTextStringOnANewLine()Dim StringOne As StringDim StringDue As StringDim StringTre come stringaDim StringFour As StringDim StringFive As StringStringOne = "Questa è la prima stringa"StringTwo = "Questa è la seconda stringa"StringThree = "Questa è la terza stringa"StringFour = "Questa è la quarta stringa"StringFive = "Questa è la quinta stringa"MsgBox StringOne & vbNewLine & StringDue & vbCrLf & StringTre & vbCr & StringQuattro & Chr(13) & StringFiveFine sottotitolo |
Il risultato è: