トップ > ワークシート関数 > LEFT

LEFT分類:文字列操作   2009.02.06

LEFTは「文字列操作」に分類される関数で、引数に指定した文字列の先頭から指定した文字数を返します。
「名字を取り出す」「県名や市町村名を取り出す」といった用途が考えられます。

LEFTの機能と構成

機能:文字列の先頭から指定した文字数を返す。

構成:=LEFT(文字列,文字数)

引数

文字列にはLEFT関数で取り出す対象文字列を指定します。
文字数には取り出したい文字数を数値で指定します。省略した場合は「1」を指定したとみなされます。文字列より多くを指定した場合は、文字列全てを取り出します。
全角・半角関係なく、又空白や句読点も1字として扱われます

引数を指定する例

セル[A1]の文字列の左から「3」文字を取り出す=LEFT(A1,3)
[Data]と名前の定義を行ったセルの文字列先頭から「3」文字を取り出す:=LEFT(Data,3)
数式を挿入したセルと同じ行のセルの文字列先頭から「3」文字を取り出す※:=LEFT($A$1:$A$10,3)

※「文字列」に行又は列、どちらか一方の1次元セル範囲を指定出来ます。その際、LEFT関数の対象となる文字列は、セル範囲と同じ行、又は同じ列のセル値です。尚、2次元セル範囲を指定すると#VALUE!のエラーになります。
下図は、引数に1次元セル範囲を指定した例です。


LEFT関数の応用

FIND関数との応用(1)

LEFT関数は、文字を検索するFIND関数と組み合わせ、任意のデータから、特定の文字を基準に文字列を取り出せます。→FIND関数

=LEFT(対象文字列,FIND(検索文字列,対象文字列,開始位置))
※取り出す文字列に「検索文字列」を含まない場合は、FIND関数から「1」を引きます。

次の例は名字と名前の間にある" "(スペース)を基準に名字を取り出す例です。

上図の結果と同様に見えますが、上図は全て3文字分(スペースを含む)取り出しているのに対し、下図ではデータによって、取り出す文字数が異なっています。


FIND関数との応用(2)

次は都道府県を取り出す例です。
ここではFIND関数に加え、エラー判断を行うISERROR関数、分岐を行うIF関数も使用します。

セル[D3]に対象データ(住所)がある場合:
=IF(ISERROR(FIND("県",D3)),LEFT(D3,3),LEFT(D3,FIND("県",D3)))

【数式の説明】

 1.IF関数の第1引数に指定したFIND関数が、セル[D3]文字列から「県」を探す。

 2.「1.」の結果がエラーであった場合は(「県」が見つからなかった場合は)、IF関数の真の条件
 (第2引数)へ進みLEFT関数でセル[D3]文字列の左から3文字を取り出す。
 (北海道、東京都、京都府、大阪府は全て3文字のため)

 3.「1.」の結果がエラーでなかった場合は、IF関数の偽の条件(第3引数)へ進み、
  FIND関数でセル[D3]文字列中の「県」の位置を求め、LEFT関数でその文字位置まで文字を取り出す。


LEFT関数の類似関数

LEFT関数の類似関数にLEFTB関数があります。LEFT関数の第2引数は「文字数」であったのに対し、LEFTB関数の第2引数は「バイト数」になります(半角文字は1バイト、全角文字は2バイトです)。使用機会は多くないと思いますが覚えておきましょう。



ページトップへ戻る
Copyright(C) 2009- 坂江 保 All Rights Reserved.