VBA の演算子(文字連結演算子:& 演算子 + 演算子)
2015/04/16
文字連結演算子
文字連結演算子は、文字列の連結を行うときに使用する演算子で、「&」または「+」を使用します。
& 演算子 の使い方
result = exp1 & exp2
引数・戻り値の説明
- exp1,exp2 ・・・ 任意の式を指定します。
- result ・・・ 任意の文字列型 (String) またはバリアント型 (Variant) の変数を指定します。
exp1、exp2 の両方が文字列型の場合、演算結果 result は文字列型になります。
exp1、exp2 の両方または一方が文字列型以外の場合(Null 値を除く)は、バリアント型(内部処理形式が文字列型)になります。
exp1、exp2 の両方が、Null 値の場合、演算結果 result も Null 値になります。
exp1、exp2 のいずれかが、Null 値の場合、演算結果 result は、Null 値でないもう一方の値となります。
また、exp1、exp2 が、Empty 値を持つ式の場合、長さ 0 の文字列として扱われます。
+ 演算子
result = exp1 + exp2
項目の説明
- exp1、exp2 ・・・ 任意の式を指定します
- result ・・・ 任意の数値変数を指定します。
+ 演算子を使用した場合、加算と文字列連結のどちらが行われるのかが分かりにくい場合があるので注意してください。
VBA 論理演算子の使用例
サンプルVBAソース
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
Sub Sample_OperatorAnd() Dim numi As Integer Dim numd As Double Dim str1 As String Dim str2 As String Dim var, n numi = 120: numd = 22.5: str1 = "Hello!": str2 = "Thank you." n = Null Debug.Print numi & numd & str1 & str2 & var & n '12022.5Hello!Thank you. Debug.Print TypeName(numi & numd & str1 & str2 & var & n) 'String Debug.Print numi & numd '12022.5 Debug.Print numi + numd '142.5 Debug.Print str1 + str2 'Hello!Thank you. Debug.Print str2 + var 'Thank you. Debug.Print str1 + numi 'エラー End Sub |
実行結果
関連記事
-
-
コレクション(Collection)オブジェクト「連想配列」
コレクション(Collection)オブジェクトの使い方 【書式】 Dim my …
-
-
列挙型変数(Enum ステートメント)
列挙型変数を使う 列挙型変数を使用するには、Enum ステートメントを使って、宣 …
-
-
データ型を調べてそのデータ型を示す文字列を返す(TypeName 関数)
TypeName 関数 の使い方 TypeName 関数は、引数に、データ型を調 …
-
-
ユーザー定義関数:自動再計算関数の設定(Volatile メソッド)
ユーザー定義関数で、自動再計算を行うかどうかを設定する ワークシート上で使用する …
-
-
文字列:文字列変数の値を右詰めまたは左詰めにする(RSet ステートメント・LSet ステートメント)
RSet ステートメント・LSet ステートメント 【書式】 < RSet ステ …
-
-
ユーザー定義定数(Const ステートメント)
定数を使う ユーザー定義の定数を使用するには、Const ステートメントを使って …
-
-
配列の添字の最小値を「1」に設定する
Option Base ステートメントを使用する 【書式】 Option Bas …
-
-
変数のデータ型・宣言(Dim ステートメント)
変数の宣言 一般的な方法 【書式】 Dim varname [ As type, …
-
-
文字列:文字列を最後から検索してその最初の文字位置を返す(InStrRev 関数)
InStrRev 関数 任意の文字列の中で、指定した文字列を最後から検索して、見 …
-
-
文字列:文字を指定数並べた文字列を返す(String 関数)
String 関数 【書式】 result = String ( number, …