vba_文字列連結_演算子


excelの vbaにおいて 


Dim str01 as String


Dim str02 as String


str01 = "abc"


str02 = "def"


Dim str_concat  as String 


と宣言したとき、


str_concat に str01と str02 を連結したものを代入したいときは


str_concat = str01 + str02 


と記述すればいいのでしょうか?





VBAでは、文字列を連結する際に `+` 演算子も使えますが、

文字列の連結には `&` 演算子を使用するのが一般的です。


`+` 演算子は数値の加算としても使われるため、

数値と文字列を連結しようとしたときに

意図しない動作をすることがあります。



ですので、`str01` と `str02` を連結するには

次のように記述するのが推奨されます:


```vba


str_concat = str01 & str02


```


この場合、`str_concat` には `"abcdef"` が代入されます。


VBAにおける文字列連結の例:


```vba


Dim str01 As String

Dim str02 As String

Dim str_concat As String


str01 = "abc"

str02 = "def"


str_concat = str01 & str02


```


このコードを実行すると、`str_concat` には

 `"abcdef"` が代入されます。


コメント