OfficeType

Excel~LEFT関数で先頭から指定した文字数を抽出しよう~エクセル

エクセルで文字列の先頭から指定された数の文字を返すLEFT関数について説明します。

  • LEFT関数の書式はLEFT(文字列, [文字数])になります。
  • 文字列は指定した文字数を抽出したい対象の文字列を指定します。
  • [文字数]は左から何文字抽出したいか指定します。

下の画像の例でセルB2に入力された住所から"東京都"を抽出したい場合はセルB2に=LEFT(A2,3)と入力しEnterを押します。

文字列はセルA2に入力された住所を指定するのでA2になります。

[文字数]は"東京都"は住所の中の左から3文字なので3になります。

つまりセルB2に=LEFT(A2,3)と入力しEnterを押すと住所の中の左から3文字の"東京都"が表示されます。

オートフィル

下の画像の例でB列にA列の文字列の左から4文字のアルファベット部分を表示したい場合はオートフィルを使えば素早く表示できます。

まずセルB2に=LEFT(A2,4)と入力しEnterを押すとセルB2にセルA2の文字列の左から4文字のアルファベット部分が表示されます。

次にセルB2を選択し右下にマウスカーソルを移動するとカーソルが黒十字(矢印なし)になるので、その状態でクリックしたままセルB5までカーソルを動かすとセルB2からB5にA列の文字列の左から4文字のアルファベット部分が表示されます。

FIND関数との組み合わせ

下の画像の例で商品IDからアルファベット部分を抽出したい時にアルファベットの文字数が決まっていない場合はLEFT関数とFIND関数を組み合わせれば抽出できます。まずセルB2に=LEFT(A2,FIND("-",A2)-1)と入力しEnterを押すとセルB2にセルA2の商品IDのアルファベット部分"QZXE"が表示されます。

文字列はセルA2に入力された商品IDを指定するのでA2になります。

[文字数]にはFIND("-",A2)-1が入力されています。FIND関数はFIND("探したい文字",文字列)で探したい文字が文字列の左から何番目か返します。探したい文字に代入さているのが-(ハイフン)で文字列に代入さているのがA2になるのでセルA2に入力された商品IDの中で-(ハイフン)が左から何番目にあるか返します。最後に-1がついているので-(ハイフン)の左の文字が文字列の左から何番目にあるかが求まり、これが[文字数]として使われます。

つまりセルB2に=LEFT(A2,FIND("-",A2)-1)と入力しEnterを押すとセルA2の商品IDからアルファベット部分がセルB2に表示されます。

セルB2からセルB5までオートフィルすればA列の商品IDのアルファベット部分がB列に表示されます。

都道府県抽出

下の画像の例で住所から都道府県を抽出したい時はLEFT関数、FIND関数、IFERROR関数を組み合わせれば抽出できます。まずセルB2に=LEFT(A2,IFERROR(FIND("都",A2),IFERROR(FIND("道",A2),IFERROR(FIND("府",A2),IFERROR(FIND("県",A2),0)))))と入力しEnterを押すとセルB2にセルA2の住所の都道府県部分の"東京都"が表示されます。

文字列はセルA2に入力された住所を指定するのでA2になります。

[文字数]にはIFERROR(FIND("都",A2),IFERROR(FIND("道",A2),IFERROR(FIND("府",A2),IFERROR(FIND("県",A2),0))))が入力されています。IFERROR関数はIFERROR(数式, エラーの場合の値)になり、数式にはFIND("都",A2)が入力されています。FIND関数はFIND("探したい文字",文字列)で探したい文字が文字列の左から何番目か返します。探したい文字に代入さているのが"都"で文字列に代入さているのがA2になるのでセルA2に入力された住所の中で"都"が左から何番目にあるか返します。IFERROR関数のエラーの場合に代入されているのがIFERROR(FIND("道",A2),IFERROR(FIND("府",A2),IFERROR(FIND("県",A2),0)))になるので、FIND("都",A2)がエラーになる場合、つまりセルA2の住所に"都"が含まれない場合は次は"道"がセルA2の左から何番目にあるかを探します。つまりこの式はセルA2に"都"が含まれなければ"道"、"道"が含まれなければ"府"、"府"が含まれなければ"県"がセルA2の左から何番目にあるかを求め、これが[文字数]として使われます。最後のIFERROR関数、IFERROR(FIND("県",A2),0)はエラーの場合に0が指定されているので、都道府県のどれも含まれない場合は0を返します。

つまりセルB2に=LEFT(A2,IFERROR(FIND("都",A2),IFERROR(FIND("道",A2),IFERROR(FIND("府",A2),IFERROR(FIND("県",A2),0)))))と入力しEnterを押すとセルA2の住所から都道府県が抽出されセルB2に"東京都"が表示されます。

セルB2からセルB7までオートフィルすればA列の住所から都道府県がB列に表示されます。

ワークブックの保存場所の表示

LEFT関数、CELL関数、FIND関数を組み合わせるとワークブックの保存場所を表示できます。下記リンクを参照してください。

ワークブックの保存場所を表示しよう

数値を抽出すると文字列になる

LEFT関数で数値を抽出した場合は文字列として扱われます。数値として扱いたい場合はVALUE関数と組み合わせます。

下の画像の例でセルB2にセルA2の郵便番号から前3桁を数値として表示したい場合は=VALUE(LEFT(A2,3))と入力しEnterを押します。

VALUE関数は数値を表す文字列を数値に変換するのでLEFT関数で抽出された数値文字列が数値として表示されます。