文字列:文字列の長さを取得( Len 関数、LenB 関数 )
Len 関数(文字列の長さを取得)
result_len = Len ( string )
result_lenb = LenB ( string )
引数・戻り値
- string ・・・ 任意の文字列・文字列式を指定します。
- result_len ・・・ 引数 string の文字数(長整数型:Long)。
- result_lenb ・・・ 引数 string のバイト数(長整数型:Long)。
引数 string が、Null 値 を含む場合は、Null 値 を返します
ワークシート関数にも LenB 関数 がありますが、動作が異なります。VBA の LenB 関数 の場合は、半角・全角にかかわらずすべての文字を2バイトとして扱います(Unicode として扱うため)。一方のワークシート関数の LenB 関数 は、半角文字を1バイト、全角文字を2バイトとして扱います(ANSI として扱うため)。
VBA で、ワークシート関数と同じ結果を取得するためには、StrConv関数 で、文字列を ANSI 形式に変換後に LenB 関数 を使用します。
Len 関数・LenB 関数 の使用例
サンプル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 |
Sub Sample_Character01() Dim str1 As String, str2, str3, str4, str5, str6, str7, strnull str1 = "おはよう!" '全角文字列 str2 = "こんにちは " '全角文字列(全角スペースを含む) str3 = "あ,い う" '全角文字列、半角カンマ、半角スペース str4 = "abcdefg" '半角英字 str5 = 123 '整数値 str6 = "" '空文字 str7 = Chr(13) '改行コード strnull = Null 'Null 値 Debug.Print "Len(文字数):" & Len(str1) & " " & "LenB(バイト数):" & LenB(str1) Debug.Print "Len(文字数):" & Len(str2) & " " & "LenB(バイト数):" & LenB(str2) Debug.Print "Len(文字数):" & Len(str3) & " " & "LenB(バイト数):" & LenB(str3) Debug.Print "Len(文字数):" & Len(str4) & " " & "LenB(バイト数):" & LenB(str4) Debug.Print "Len(文字数):" & Len(str5) & " " & "LenB(バイト数):" & LenB(str5) Debug.Print "Len(文字数):" & Len(str6) & " " & "LenB(バイト数):" & LenB(str6) Debug.Print "Len(文字数):" & Len(str7) & " " & "LenB(バイト数):" & LenB(str7) Debug.Print IIf(IsNull(strnull), Null, "Len(文字数):" & Len(strnull) & " " & "LenB(バイト数):" & LenB(strnull)) End Sub |
実行結果
関連記事
-
-
指定した文字列を数値に変換する(Val 関数)
Val 関数 の使い方 Val 関数は、指定した文字列に含まれる数字を数値として …
-
-
文字列:指定した数の空白(スペース)からなる文字列を返す(Space 関数)
Space 関数 【書式】 result = Space ( number ) …
-
-
式の値に応じて多分岐を行う(Switch 関数)
Switch 関数 の使い方 Switch 関数は、「式・値」を対にして指定して …
-
-
Array 関数(バリアント型の配列を作成)
Array 関数の使い方 【書式】 myArray = Array ( elem …
-
-
指定した値を8進数で表記した文字列に変換する(Oct 関数)
Oct 関数 の使い方 【書式】 result = Oct ( expressi …
-
-
Join 関数(配列の要素を結合)
Join 関数 1次元配列の各要素を指定した区切り文字で連結します。 【書式】 …
-
-
出力位置、書き込み位置を設定(Tab 関数)
出力位置、書き込み位置を設定 Tab 関数 は、Print メソッド、または P …
-
-
VBA で正規表現を使う(RegExp オブジェクトのプロパティ)
RegExp オブジェクトのプロパティ RegExp オブジェクトの詳細に関して …
-
-
乱数ジェネレータを初期化 (乱数系列を再設定) する(Randomize ステートメント)
Randomize ステートメントの使い方 Rnd 関数 を使用する前に使用しま …
-
-
文字列:文字列を検索してその最初の文字位置を返す(InStr 関数,InStrB 関数)
InStr 関数・InStrB 関数の使い方 【書式】 result = { I …
- PREV
- set ステートメントを使う
- NEXT
- 変数やプロシージャのスコープ(適用範囲)
