Конкатенация VBA

Объединение (конкатенация) строк в VBA. Урок №24

Конкатенация – это объединение нескольких строк в одну. В VBA для соединения строк используют знак & (амперсанд).

Пример слияния строк в VBA

Sub myCode()
    concatenatio = "Доброго вечора," & " " & "ми з України!"
    MsgBox (concatenatio)
End Sub

Результат объединения строк всегда имеет тип данных String. Поэтому, даже если выражение не является строкой, то оно всё равно будет преобразовано в тип String.

Пример

Sub myCode()
    concatenatio = "Доброго вечора," & " " & "ми з України! " & 2022 & " рік"
    MsgBox (concatenatio)
End Sub

В данном примере, 2022 мы не заключили в кавычки. Но VBA понимает, что мы пытаемся выполнить объединение строк и потому число 2022 будет преобразовано в тип String.

Конкатенация в VBA

Для наглядности, давайте рассмотрим ещё один пример, в котором будет выполнена конкатенация переменных, которые имеют разный тип данных.

Sub myCode()
    Dim a As String
    Dim b As String
    Dim n As Integer
    
    a = "Доброго вечора, "
    b = "ми з України! "
    n = 2022
    
    concatenatio = a & b & n
    MsgBox (concatenatio)
End Sub

В этом примере, несмотря на то, что для переменной n мы явно указали тип Integer (целое число), компилятор VBA, преобразует его в тип String, поскольку в выражении происходит именно слияние строк.

Main Menu