ExcelのLEFTB関数の使い方について具体例を交えて説明します。
書式
LEFTB(文字列, [バイト数])
※ []内の引数は任意の項目です。
関数と変数の説明
文字列の先頭から指定されたバイト数分の文字を返します。
- 文字列(必須項目):取り出す文字を含む文字列を指定します。
- バイト数(任意項目):左から何バイト切り出すかを指定します。0を指定すると何も返ってきません(空が返る)。マイナスの値を指定すると、「#VALUE!」を返します。
使用例
以下が使用例になります。
A | B | C | |
---|---|---|---|
1 | 対象文字列 | ||
2 | マイクロソフト(Microsoft) | ||
3 | |||
4 | 取得したい内容 | 出力結果 | 計算式 |
5 | 1.先頭から1バイトを取得する(変数省略時) | =LEFTB(A2) | |
6 | 2.先頭から1バイトを取得する(変数指定あり) | =LEFTB(A2,1) | |
7 | 3.先頭から2バイトを取得する | マ | =LEFTB(A2,2) |
8 | 4.先頭から3バイトを取得する | マ | =LEFTB(A2,3) |
9 | 5.先頭から4バイトを取得する | マイ | =LEFTB(A2,4) |
10 | 6.先頭から16バイトを取得する | マイクロソフト(M | =LEFTB(A2,16) |
11 | 7.先頭から100バイトを取得する | マイクロソフト(Microsoft) | =LEFTB(A2,100) |
12 | 8.取得するバイト数が0の場合 | =LEFTB(A2,0) | |
13 | 9.取得するバイト数がマイナスの場合 | #VALUE! | =LEFTB(A2,-1) |
「1.先頭から1バイトを取得する(変数省略時)」のケースはバイト数変数を省略したときの出力結果です。バイト数が省略されたときはバイト数は1で計算されます。しかし、対象文字列が「マイクロソフト(Microsoft)」で最初の一文字が「マ」となります。「マ」は2バイト文字なので、その半分を取得しようということになります。その場合はスペース(赤い部分)が返ってきます。また、「2.先頭から1バイトを取得する(変数指定あり)」と同じ結果になります。
「3.先頭から2バイトを取得する」から「5.先頭から4バイトを取得する」までは日本語(2バイト文字)の場合に1バイトがどう扱われるか分かりやすく取得するバイト数を1バイトづつ増やしていった場合の例になります。赤い部分はスペースを表しています。
「6.先頭から16バイトを取得する」は半角文字が含まれている場合の例です。半角文字は1文字1バイトで計算します。「マイクロソフト(Microsoft)」の「マイクロソフト」は日本語の全角文字、1文字2バイトです。7文字×2バイト=14バイトとなります。それ以降の「(Microsoft)」は半角文字で1バイト文字になります。「マイクロソフト」が14バイトなので、そこから残り2バイト(2文字)の「(M」まで対象となり、「マイクロソフト(M」が返ってきます。
「7.先頭から100バイト文字取得する」のケースでは対象となる文字列が25バイトしかない場合に先頭からバイト数100を取得をしています。対象となる文字列のバイト数 < 取得するバイト数の場合です。その時は特に何のエラーも返さず、対象となる文字列すべてが返ってきます。
「8.取得するバイト数が0の場合」は何も返ってきません(空が返る)。
「9.取得するバイト数がマイナスの場合」のケースは誤って文字数がマイナスの値の場合です。その場合は「#VALUE!」が返ってきます。
コメント