トランの毎日迷宮

Tech系ブログを目指すもの

【Excel】エクセルの部分文字列編【MID】

 

こんばんにちはございます。トランです。

 

今日もエクセルの話です。

こうやってプログラミングに話題のないときはエクセルの話題が頻出すると思いますので、ご了承くださいませ(笑)。

さぁ本題でございます。

プログラムなんかしらの言語でやったことのある方は

部分文字列という言葉を聞いたことがあるかと思います。

部分文字列というのは、例えば

chairの2文字目から4文字抜き出すとhair

hairの2文字目から3文字抜き出すとair

また、priceの2文字目から4文字抜き出すとrice

riceの2文字目から3文字抜き出すとice

という感じで、文字列の一部の文字列です。

で、エクセルでこれをやるのが

LEFT関数 LEFT(対象セル,X)  対象セルの左からX文字取り出す。

RIGHT関数 RIGHT(対象セル,X)  対象セルの右からX文字取り出す。

MID関数   MID(対象セル,Y,X)    対象セルの左Y文字目からX文字取り出す。

です。

下の図をご覧ください

f:id:trantran1021:20181212195631j:plain

B1セルには=MID(A1,2,3)という式が入っています。

これは

A1セルの2文字目から3文字目を抜き出す。という意味になります。

ちなみにB3のセルには

=MID(A3,1,2)という式が入っています。

お気づきの方もいるかもしれませんが、B3セルは

=LEFT(A3,2)の方がわかりやすい書き方ですね。

このようにしてとあるセルの部分文字列を取り出すことができます。

と、ここでちょっと発展して

A1セルのcから3文字抜き出すということをやってみましょう。

f:id:trantran1021:20181212203026j:plain

今度はC3に

=MID(A1,SERCH("c".A1,1),3)

という式を入れました。先ほどの3の部分が

SERCH("c".A1,1)に変わりました。これは

A1セルの文字列でcが出てくるのは3文字目(大文字小文字区別しない)という意味

になります。大文字小文字を区別するFIND関数というのもあります。

SERCHの部分をFINDに変えてみてもこの場合は小文字しか使っていないので同じ結果を得ることができます。

さて、そんなわけでして

これを先ほどのMID関数に組み込んだわけです。関数の中に関数を入れる、そしてその中に更なる関数を。。。というのはやってみると楽しくなってきますね。それが手軽にできるエクセルは素晴らしい。ただやりすぎると分かりにくくなって間いうのでご注意を。

エクセルには様々な関数がありますが文字列操作の関数は理解しやすいと思いますので

是非、お試しください。

そんなわけで、おしまい。