Excel 左・右よりバイト数を指定して文字列を切り出す(LEFTB/MIDB/RIGHTB関数)
LEFTB/MIDB/RIGHTBは文字列に対し、
バイト数で文字数や位置を指定して文字列を切り出す関数です。
この記事では、その仕様と使い方を紹介します。
使用頻度の低い関数でLEFT/MID/RIGHTを使用する機会の方が多いでしょう。
仕様
LEFTB
文字列を先頭から切り出します。
=LEFTB(文字列,バイト数)
引数 | 省略時の値 | 説明 |
---|---|---|
文字列 | 省略不可 | 切り出す対象の文字列を指定。 |
バイト数 | 省略不可 | 取り出すバイト数を数値で指定。 文字列のバイト数をオーバーした場合、末尾まで。 |
MIDB
文字列を指定の位置から切り出します。
=MIDB(文字列,開始位置(バイト数),バイト数)
引数 | 省略時の値 | 説明 |
---|---|---|
文字列 | 省略不可 | 切り出す対象の文字列を指定。 |
開始位置(バイト数) | 省略不可 | 文字列の先頭を1とした開始位置を数値で指定。 |
バイト数 | 省略不可 | 取り出すバイト数を数値で指定。 文字列のバイト数をオーバーした場合、末尾まで。 |
RIGHTB
文字列を末尾から切り出します。
LEFTBとMIDBは左→右方向に切り出しますが、
RIGHTBは右→左方向に切り出します。
=RIGHTB(文字列,バイト数)
引数 | 省略時の値 | 説明 |
---|---|---|
文字列 | 省略不可 | 切り出す対象の文字列を指定。 |
バイト数 | 省略不可 | 取り出すバイト数を数値で指定。 文字列のバイト数をオーバーした場合、先頭まで。 |
使用例
半角文字(1バイト)であれば支障なく扱えます。
全角文字(2バイト)を使用すると1バイト部分のみを切り出す場合があります。
(下のサンプルの3行目)

「あ」にLEFTBでバイト取得した場合、32が取得されて半角スペースになります。
半角全角が入り混じる日本語環境での利用は注意が必要です。
スピルを利用する方法とメリット
Office365やExcel2019以降ではスピルという形式で記述可能です。
これは複数セルに数式をコピーする場合に便利な機能です。
スピルの利用には何れかの引数を複数セルの範囲で指定します。
例示はLEFTB関数ですが、他の関数も同様です。
両方を範囲にしていますが、片方だけが範囲指定でも正常に動作します。

数式を入力するのは最初の一つのセルですが、
引数で指定した高さ分、数式がセルのコピーなしで自動拡大されます。

スピルを利用することで今回の例では、
C3セルに入力するだけでよいため(C4以降にコピーペーストが不要)
以下のメリットがあります。
- 入力の手間が少ない(数式のセルが多いほど効果が大きい)
- 数式を編集した時、コピー忘れのリスクがない(最初のセルを更新すると全セルに反映)
- 絶対参照が不要
- 途中に行を追加した場合、数式のコピー&ペーストが不要。行削除でも壊れにくい。
Excelを効率的に習得したい方へ
当サイトの情報を電子書籍用に読み易く整理したコンテンツを
買い切り950円またはKindle Unlimited (読み放題) で提供中です。

Word-A4サイズ:1,400ページの情報量で
(実際のページ数はデバイスで変わります)
基本的な使い方、関数の解説(140種類)、
頻出テクニックと実用例(109種類)、
XLOOKUP関数、LET関数、シートビュー、LAMBDA関数、スピルなど便利な新機能を紹介。
体系的に学びたい方は是非ご検討ください。
アップデートなどの更新事項があれば随時反映しています。
なお購入後に最新版をダウンロードするには
Amazonへの問い合わせが必要です。