Excel(エクセル)バイト(Byte)数で文字をカウント
Excelで文字数をカウントする単位には2種類あります。単純に文字の個数を数える「文字数」と半角を1と数える「バイト数」です。ここでは「バイト数」で文字列を操作する関数について解説していきます。
使用関数:LENB、FINDB、SEARCHB、MIDB、LEFTB、RIGHTB、REPLACEB
バイト(Byte)数とは?
バイト(Byte)はデータの容量の単位ですが、Excel関数で文字列操作に用いるバイト数は文字幅の単位と考えて下さい。
基本的に半角が1バイト文字、全角が2バイト文字です。漢字・かな文字は2バイト文字で、絵文字や丸数字なども2バイト文字です。
(※文字コードUnicode utf-8では3バイト文字や4バイト文字もあります)
半角記号、半角スペース、改行文字などは1バイト文字です。
半角カタカナの濁音・半濁音のバイト数に注意
半角カタカナの「カ」や「ハ」は1バイト文字ですが、濁音・半濁音の「ガ」や「パ」は濁点・半濁点が別文字とされるため2バイトになります。
因みに、半角カタカナの濁音・半濁音は「文字数」でも2とカウントされます。全角カタカナの「ガ」や「パ」は「文字数」では1とカウントされます。
1バイト文字と2バイト文字の主な分類
1バイト文字 | 半角英数字 (1,2,3)(A,a) |
半角カタカナ (ア,イ) |
半角記号 (*,?) |
|
---|---|---|---|---|
2バイト文字 | 全角英数字 (A,1) |
漢字・かな (亜,あ,パ) |
濁音・半濁音の半角カタカナ (ガ,パ) |
全角記号 (*,?) |
バイト数で文字を検索・取得する関数
以下のリストで分かるように、文字列をバイト単位でカウントする文字列操作の関数名には皆「B」が末尾に付いています。Bは「Byte(バイト)」の略です。これらの関数名からBを除いた関数は全て文字列を「文字数(1文字=1)」でカウントします。
関数名 | 機能 | 戻り値 |
---|---|---|
LENB | 文字列の長さをバイト数で測る | 数値 |
LEFTB | 文字列をバイト数で抽出する(左・先頭から) | 文字列 |
MIDB | 文字列をバイト数で抽出する(任意の位置から) | 文字列 |
RIGHTB | 文字列をバイト数で抽出する(右・後ろから) | 文字列 |
FINDB | 文字列の位置をバイト数で求める(完全一致) | 数値 |
SEARCHB | 文字列の位置をバイト数で求める(曖昧検索) | 数値 |
REPLACEB | 文字列をバイト数で検索し、置き換える | 文字列 |