概要
LEFTは「文字列の左から指定した文字数だけ切り出す」関数です。住所から都道府県だけ取りたい、品番の先頭コードを抜きたい、日付や数値を文字として成形したうえで先頭部分だけ取りたい、といった場面で使います。日本語の全角文字でも「1文字=1カウント」で動作します。
基本の使い方
書式
=LEFT(文字列, 文字数)
文字数を省略すると先頭1文字だけ返します。文字数が文字列の長さより大きい場合は、文字列全体が返ります。
例
=LEFT("東京都江東区", 3) // "東京都"
=LEFT("AB-12345", 2) // "AB"
=LEFT("山田 太郎", 1) // "山"
=LEFT("山田 太郎") // "山"(文字数省略=1文字)
具体例
先頭コード(プレフィックス)を取り出す
部品番号が「AB-12345」のような形式のとき、先頭2文字のコード部分を抽出します。
=LEFT(A2, 2)
姓と名が半角スペース区切りのとき、姓だけ取得
「山田 太郎」から姓(左側)を取得します(スペース位置をSEARCHで探すのが安全)。
=LEFT(A2, SEARCH(" ", A2)-1)
全角スペースの可能性がある場合は「” ”」(全角スペース)に差し替えます。
郵便番号の前半(3桁)を取り出す
「123-4567」の先頭3桁を取得します。
=LEFT(A2, 3)
日付や数値を整形してから先頭を取得
数値や日付はTEXTで文字列化してからLEFTを使うと意図通りになります。
=LEFT(TEXT(A2, "yyyy/mm/dd"), 4) // 年だけ → "2025"
=LEFT(TEXT(B2, "000000"), 3) // 先頭3桁(ゼロ埋め後)
応用テンプレート
区切り文字の左側を丸ごと取得(可変長)
ハイフンの左側すべてを取りたい場合(区切り位置が変わってもOK)。
=LEFT(A2, FIND("-", A2)-1)
FINDは大文字小文字を区別、SEARCHは区別しません。どちらでも使えます。
先頭n文字を取り、末尾の空白を除去
取り出した文字の末尾に空白が混じるときはTRIMで整えます。
=TRIM(LEFT(A2, n))
文字数を自動化(固定接頭辞の長さから計算)
「CODE_」のような接頭辞を検出して、その長さ分だけ切り出し。
=LEFT(A2, LEN("CODE_"))
エラーに弱い入力の保護(空文字や区切りなし)
区切りが無い場合は全文返す、あるいは空欄にするなど。
=IFERROR(LEFT(A2, FIND("-", A2)-1), A2)
バイト数ベースが必要なとき(旧来のDBCS設定のみ)
日本語環境の一部設定では LEFTB が「バイト数」で動作します(モダン環境では推奨しません)。
=LEFTB(A2, バイト数)
通常はLEFTを使い、文字ベースで設計してください。
よくあるつまずきと対策
数値や日付にそのままLEFTを使うと意図と違う
LEFTは“文字列”に対して使うのが基本です。数値や日付はTEXTで成形してから切り出しましょう。
=LEFT(TEXT(A2, "0.00"), 2)
区切り文字が見つからないとエラー
FIND/SEARCHが見つからないと#VALUE!になります。IFERRORで保護するか、事前に区切りの有無をチェックします。
=IFERROR(LEFT(A2, FIND("-", A2)-1), "")
全角スペースと半角スペースの混在
スペースが全角・半角で混在すると区切り検出に失敗します。SUBSTITUTEで全角を半角に寄せてから検索すると安定します。
=LEFT(SUBSTITUTE(A2, " ", " "), FIND(" ", SUBSTITUTE(A2, " ", " "))-1)
文字数が負や0
文字数が0なら空文字、負の値はエラーになります。可変の文字数を計算するときは0未満に落ちないようMAXで保護します。
=LEFT(A2, MAX(0, SEARCH(" ", A2)-1))
例題
問題1: A2の左から5文字をB2に表示してください。
解答例:
=LEFT(A2, 5)
問題2: 「AB-12345」形式の文字列A2から、ハイフンの左側だけをC2に表示してください。
解答例:
=LEFT(A2, FIND("-", A2)-1)
問題3: 氏名「姓(半角スペース)名」がD2に入っています。姓だけをE2に表示してください。
解答例:
=LEFT(D2, SEARCH(" ", D2)-1)
問題4: 日付F2を「yyyy/mm/dd」に整形し、先頭4文字(年)だけをG2に表示してください。
解答例:
=LEFT(TEXT(F2, "yyyy/mm/dd"), 4)
問題5: 郵便番号「123-4567」がH2にあります。先頭3桁をI2に表示し、区切りが無い場合は空欄にしてください。
解答例:
=IFERROR(LEFT(H2, FIND("-", H2)-1), "")
まとめ
LEFTは「左からn文字」を取り出す基本関数で、区切り文字との組み合わせ(FIND/SEARCH)、文字列化(TEXT)、整形(TRIM/SUBSTITUTE)とあわせて使うと現場で安定します。日本語の全角も“1文字”として数えられるため、文字ベースで設計すればOK。数値・日付はTEXTで文字列化、区切り検出はIFERRORで保護する——このセットを覚えておくと、先頭抽出のテンプレートがきれいに仕上がります。
