1. ホーム
  2. excel

VBAで文字列の連結を行うには?

2023-10-11 23:40:36

質問

この質問は、以下のコメントから来ています。 VBAでRange.Formula=が変なエラーを吐く .

試行錯誤で書いたプログラムなので、当然、試しに + で文字列を連結しています。

しかし & よりも正しい + よりも正しいのでしょうか?

どのように解決するのですか?

& 常に で評価されるのに対し、文字列コンテキストで + はオペランドの一つが文字列でない場合、連結しないことがあります。

"1" + "2" => "12"
"1" + 2   => 3
1 + "2"   => 3
"a" + 2   => type mismatch

これは単に潜在的なバグの微妙な原因であるため、避けるべきでしょう。 & 常に は、引数が文字列でない場合でも、文字列の連結を意味します。

"1" & "2" => "12"
"1" &  2  => "12"
 1  & "2" => "12"
 1  &  2  => "12"
"a" &  2  => "a2"