Excel関数 逆引き集 | 左からn文字 → LEFT

Excel
スポンサーリンク

概要

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で保護する——このセットを覚えておくと、先頭抽出のテンプレートがきれいに仕上がります。

タイトルとURLをコピーしました