Excel VBA テクニック集 |
昔、「A」「ア」は1バイト文字、「A」「ア」は2バイト文字として扱われました。 UniCodeが採用されてからは、すべて2バイト文字になりました。 文字数の長さを関数Lenで調べると、 Len("アアア"),Len("111")は3 Len("アアア"),Len("111")も3 になります。バイト数を関数LenBで調べると、 Len("アアア"),Len("111")は6 Len("アアア"),Len("111")も6 になります。ところで、表示上の長さを調べようとするとLen,LenB使えません。 小文字は1、大文字は2となるような関数が必要です。その関数を下記に記載します。 Public Function Len_Text(Text_F As String) As Integer Dim I As Integer Len_Text = 0 If Text_F = "" Then Exit Function End If For I = 1 To Len(Text_F) If Asc(Mid(Text_F, I, 1)) >= 0 _ And Asc(Mid(Text_F, I, 1)) <= 255 Then Len_Text = Len_Text + 1 Else Len_Text = Len_Text + 2 End If Next I End Function |
「こだわりハウス」写真館| 数学公式集| ピンポイントストリートビュー| FaceBook| Excel Vba テクニック集| Excel 計算式解析・他解析| 富山の建築家| Excel 計算式解析・他解析| 積分の定義・積分の記号の意味の研究| |