カテゴリー
SugiBlog Webデザイナー・プログラマーのためのお役立ちTips

文字列の長さを求める Len/LenB

この記事は最終更新日から1年以上経過しています。

VBAで文字列の長さを求める際は少し注意が必要です。
通常のLen関数を使用した場合、半角・全角に関わらず全ての文字を一文字として計算します。
かといって、LenB関数を使用しても、全ての文字を2バイトとして計算するため、答えは倍になるだけです。

他のプログラム、例えばPHPならstrlen関数になりますが、こちらでは半角は1バイト、全角なら2バイトとなります。
こちらと同じようにVBAでも計算したい場合はどうすれば良いのでしょうか?
答えは以下のようになります。

'長さを求めたい文字列
HenkanStr = "LenB関数"
MsgBox LenB(StrConv(HenkanStr, vbFromUnicode))

出力結果は「8」となります。

StrConvについては以下をご覧ください。
https://k-sugi.sakura.ne.jp/it_synthesis/windows/vb/81/

この記事がお役に立ちましたらシェアお願いします
4,517 views

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です