はい、LEFT 関数と LEFTB 関数は、Excel で文字列の先頭から文字を取り出す関数です。ただし、扱う単位が異なります(文字数 or バイト数)。
✅ LEFT 関数:文字数ベース
📌 構文
=LEFT(text, [num_chars])
| 引数 | 説明 |
|---|
text | 対象の文字列 |
num_chars(省略可) | 抜き出したい文字数(既定値は 1) |
🧾 使用例
=LEFT("Apple", 3)
→ "App"
=LEFT("日本語", 2)
→ "日本"
- 全角文字(日本語など)も 1文字 = 1文字 としてカウントされます。
🉑 LEFTB 関数:バイト数ベース(マルチバイト環境向け)
📌 構文
=LEFTB(text, [num_bytes])
| 引数 | 説明 |
|---|
text | 対象の文字列 |
num_bytes(省略可) | 抜き出すバイト数(全角は2バイト、半角は1バイト) |
✅ 特徴
- 日本語や中国語など、マルチバイト文字(全角)を 2バイトとしてカウント。
LEFTB は、**Windowsの地域と言語設定がマルチバイト言語(日本語など)**の場合に有効。- 半角文字(英字・数字など)は 1バイト、全角文字は 2バイトで計算。
🧾 使用例
=LEFTB("ABC", 2)
→ "AB"
=LEFTB("日本語", 2)
→ "日"("日"=2バイト)
=LEFTB("日本語", 3)
→ エラーや部分的文字(バイト途中)になる可能性あり
❗ 違いまとめ
| 項目 | LEFT | LEFTB |
|---|
| 単位 | 文字数(1文字単位) | バイト数(半角1、全角2) |
| 全角対応 | ○(1文字) | ○(2バイト) |
| 半角対応 | ○(1文字) | ○(1バイト) |
| 環境依存 | なし | あり(マルチバイト言語環境で有効) |
✅ どっちを使うべき?
- 日本語などの全角文字を「文字数」で処理したい:→
LEFT - CSVやバイト長制限のあるフォーマット処理:→
LEFTB(日本語対応環境で)
Post Views: 116