LEFT関数とRIGHT関数

この二つの関数は左右どちらからか文字の先頭から指定した数の文字を表示してくれるという物です、便利。
全角半角、点は付けたか、送り仮名はどうか、漢字かひらがなか、漢数字かカタカナかアルファベットか統一しているのか等様々な条件があり、そのまま使うケースの方が限られているかもしれません。
こう考えると日本語厄介ですね、海外の方の気持ちが少しわかったような気がします。さていきましょう。

レフト関数は左から、ライト関数は右から指定した数持ってきてくれます。

=LEFT(文字列,文字数)
=RIGHT(文字列,文字数)

図のように文字数を指定します。実際の画面で見るとこんな感じ。

左右関数は「左右どちらかから何文字持ってくるか」という使い方をするので
不要な文字を取り除いたり、必要な文字だけ切り出したりとするシーンで主に使用しますが、「最初の1文字だけは要らない」「この文字の先から欲しい」などの特定の文字を省いたり、特定の文字まで持ってきたかったりそのまま使えないケースもありますので、分解していきましょう。

大きく分けて文字列と文字数で加工出来るので、一つずつやっていきましょう。

ケース別

まずは例で作成した識別用コードを見てみましょう。

最初のアルファベットと記号はカテゴリでハイフン(-)前のコードは支店コード、ハイフン(-)後のコードは品番データだとします、これを分解してみます。

2文字目の記号だけ抜き出したい

=RIGHT(LEFT(B3,2),1)
「左から二番目(A◆)」という文字列を「右から一番目(◆)」にする。
最後の一文字になるまで絞り倒す事も可能です。

ハイフン前だけを抜き出したい

=RIGHT(LEFT(B3,FIND(“-“,B3)-1),FIND(“-“,B3)-3)
「左からハイフンまで引く1(A◆42)」という文字列を「右からハイフンまで引く3(42)」にする。
最初の「引く1」はハイフンも入ってしまっているので抜くためで、「引く3」は記号まで2、ハイフンで1を省くために引いてあります。
こちらは恐らくMID関数の方が綺麗に収まりますが、条件によってはLEFTRIGHTの方が抜きやすかったり、状況によって使い分けましょう。

ハイフン後だけを抜き出したい

=RIGHT(B3,LEN(B3)-FIND(“-“,B3))
「右からセルの文字数(10)からハイフンまでの文字数を引いた数」を表示するだけです。
当然この後に何かが続いていればやり方は変わりますが、それこそMID等を組み合わせて対処していきましょう。

このように他の関数と組み合わせる事で、より柔軟な動きが出来るので、切り取った文字列をCONCATENATE関数で繋げてみたり、さらっとまだ説明してないのに使った関数「LEN」のようにセルの総文字数が分かれば処理の枠は広がります。

理解しながら使っていけば少しずつ体に入っていきます、出来ずに困ったら調べて使って理解すれば良いんです、より快適なEXCELライフを。

imakara

コメント