ワークシート関数同様、VBAで文字数を求める場合もLen関数を用います。
Len関数の使い方
文字数を求める
Len(文字列)
Len(文字列)
![len1](https://sunagitsune.com/wp-content/uploads/2021/03/len1.jpg)
これの文字数を求めてみます。
![len2](https://sunagitsune.com/wp-content/uploads/2021/03/len2.jpg)
Lenの引数に文字列のあるA1セルを指定し、これをメッセージボックスで表示します。
![len3](https://sunagitsune.com/wp-content/uploads/2021/03/len3.jpg)
結果、このようになります。
Len関数で繰り返し
ちょっと応用として、繰り返し処理をしてみます。
Dim、OptionExplicitについてはこちら、
Dim、OptionExplicitについてはこちら、
繰り返し構文のFor Nextについてはこちらで解説しています。
![len4](https://sunagitsune.com/wp-content/uploads/2021/03/len4.jpg)
Len関数は数値を返すので、変数に格納する場合はInteger、Longなどの数値型の変数で指定します。
最近の高性能なパソコンでは指定しない(as以降を書かない)でもあまり問題ないんですが、一応そのほうが処理が軽くなりますし、書いたほうが可読性という意味ではわかりやすいです。
最近の高性能なパソコンでは指定しない(as以降を書かない)でもあまり問題ないんですが、一応そのほうが処理が軽くなりますし、書いたほうが可読性という意味ではわかりやすいです。
![len5](https://sunagitsune.com/wp-content/uploads/2021/03/len5.jpg)
というわけで、一行目から百行目まで、A1セルの文字数を数えてA2セルに表示するプログラムです。
Cellsは行,列でセル番号を指定する命令です。コードは下記となります。
Cellsは行,列でセル番号を指定する命令です。コードは下記となります。
' vba
Dim 文字数 As Integer
Dim i As Integer
For i = 1 To 100
文字数 = Len(Cells(i, 1))
Cells(i, 2).Value = 文字数
Next
![len6](https://sunagitsune.com/wp-content/uploads/2021/03/len6.jpg)
実行結果はこのようになります。A列に文字がない場合は数字を表示したくない場合は、A列に文字があるかどうかをIf文で判別するなどすることで対応できます。
LenB関数(バイト数)の使い方
文字列のバイト数を求める
LenB(文字列)
LenB(文字列)
![len7](https://sunagitsune.com/wp-content/uploads/2021/03/len7.jpg)
さきほどのコードのLenをLenBに変更してみます。
LenB関数では文字数の代わりに、文字列のバイト数を求めることができます。ざっくり半角で1バイト、大文字で2バイトです。
LenB関数では文字数の代わりに、文字列のバイト数を求めることができます。ざっくり半角で1バイト、大文字で2バイトです。
![len8](https://sunagitsune.com/wp-content/uploads/2021/03/len8.jpg)
その場合、実行結果はこうなります。
![](https://sunagitsune.com/wp-content/uploads/2021/04/sheep-4490437_1280-160x90.jpg)
Excel(エクセル):数える、カウント
Excelで個数を数える、カウントする方法まとめです。
セルの数を数える
範囲内の数字の入ったセルの個数、データの入ったセルの個数を数えるには、それぞれCount関数、CountA関数を使います。
空白セルの個...
![](https://sunagitsune.com/wp-content/uploads/2018/12/mathematics-1509559_1280-160x90.jpg)
関数・演算子・メソッド・プロパティ名から探すExcel/VBA(マクロ)使い方・組み合わせ方まとめ
こちらはExcelやメソッドの諸機能を、機能の名称から探せるまとめ記事です。
コメント