【Excel・エクセル】MID関数の使い方!指定した位置から文字を抽出する

もりの

このセルの真ん中の文字列を、取り出せないかな?

やまの

それなら、MID関数を使うといいんよ。

今回のポイント
  • 文字列を真ん中から取り出したいときは、MID関数
  • =MID(文字列,開始位置,文字数)
  • 右から数えるには、LEN関数と組み合わせる

スポンサーリンク

 MID関数の練習ファイルダウンロード

もりの
 
 

一緒にやってみませんか?

【Excel・エクセル】文字列を真ん中から抽出する、MID関数

端じゃなくて、真ん中にある文字列を取り出したい!

そんな時にはMID関数を使います。

MID関数の例
MID関数の例

読み方は「MID関数」です。

もりの

MIDDLE(ミドル)のミッドだね!

やまの

MID関数には、兄弟とも呼べる関数があるんよ。

文字列を右から抽出するにはRIGHT関数、左から抽出するにはLEFT関数を使います。

ちなみに抽出した文字は、文字列でも数字でも、文字列として扱われます

さっそく、使い方を見てみましょう。

【Excel・エクセル】MID関数の使い方、真ん中から文字を抽出

MID関数の書き方

=MID(文字列,開始位置,文字数)

文字列このセルの
開始位置左から数えてこの位置から
文字数この文字数分取り出して
やまの

さっそく使ってみよう。

MID関数の使用例

住所から、間にある区を取り出したいと思います。

MID関数の練習問題
真ん中の区を抽出したい
やまの

=MID(A2,4,3)で、求められるよ。説明するね。

ステップ1

まずは関数名、「=MID(」まで入力します。

「=MID(」まで入力した画像
まずは関数名

ステップ2

次に、どのセルの文字を取り出したいかです。

今回はセルA2をクリックして、「,(カンマ)」を入力してください。

MID関数の文字列を指定した画像
このセルから取り出したい!

ステップ3

次に、左から数えて何文字目から取り出したいかです。

今回は東京都の次なので、4文字目からですね。

「4,」と入力します。

MID関数の開始位置を指定した画像
左から数えて何文字か
やまの

まだ続くから、「,(カンマ)」を忘れないでね。

ステップ4

最後に、何文字取り出したいかです。

今回は品川区、なので3文字ですね。

「3」と入力しましょう。

MID関数の文字数を指定した画像
何文字取り出したいか

完成!

これで式は完成なので、エンターキーを押してください。

無事、住所から区名が取り出せました!

もちろんオートフィルも使えます。

MID関数で区名を抽出した画像
区を取り出せた

【Excel・エクセル】MID関数の開始位置を右から数えたい

MID関数の開始位置は左から数えますが、右から数えた方が早いときもありますよね。

取り出したい文字列が右寄りの画像
左から数えると大変

そんな時は、文字数をカウントする「LEN関数」と組み合わせるといいですよ!

LEN関数の書き方

=LEN(文字列)

文字列この文字列(セル)の文字数をカウントして
やまの

=MID(D2,LEN(D2)-6,3)で、求められるよ。説明するね。

ステップ1

ず、MID関数を開始位置まで進めてください。

MID関数の開始位置を指定する画像
開始位置まで進める

ステップ2

ここでLEN関数を使います。

「LEN(」と入力します。

MID関数の中にLEN関数を書いた画像
LEN関数さん、出番よ!

ステップ3

文字列を取り出したいセルD2をクリックして、カッコを閉じます。

抽出したい文字列を指定した画像
抽出したい文字列を指定

ステップ4

やまの

ここがポイント!

LEN関数の続きに、「-取り出したい文字数-1」を入力します。

MID関数の文字列を指定した画像
右から数えた文字数-1

今回は右から数えて7文字目から取り出したいので、7-1で6を引けばいいんですね!

「,(カンマ)」もお忘れなく!

ステップ5

あとは何文字取り出したいか。

今回は3文字なので「3」と入力します。

MID関数の文字数を指定した画像
何文字取り出したいか

完成!

これで式は完成です。

カッコを閉じてエンターキーを押すと、右から指定した文字列を抽出できました!

MID関数で右から数えたバージョン
右から、右から~♪

【Excel・エクセル】日付から月を取り出すには

生年月日が書かれたセルから月を取り出そうとMID関数を使った何も表示されませんでした。

日付けにMID関数を使った画像
空白になった
やまの

実は、6文字目は存在しないんよ。

もりの

コレはあれだ、怖い話だ。

エクセルで日付は、1900年1月1日を1として数えるシリアル値で表されます。

2022/7/22のシリアル値は44764の5桁。
なので、6文字目を指定すると空白になったんですね。

コレを回避するには、「TEXT関数を使う方法」と「MONTH関数を使う方法」があります。

日付けから抽出1、TEXT関数と組み合わせる

日付けをTEXT関数を使って文字列に変換すれば、MID関数でも取り出せます。

セルE2の日付から月を取り出したい場合、「=MID(TEXT(E2,"yyyy/m/d"),6,1)と入力すればOKです。

TEXT関数とMID関数を組み合わせた画像
TEXT関数とMID関数を組み合わせる
やまの

〇年〇月〇日みたいに表示形式を変えたい場合は、下のページを見てね。

この場合、取り出した値は文字列として扱われます。

日付けから抽出2、MONTH関数を使う

日付から月を取り出したい場合、「MONTH関数」を使います。

セルE3の日付から年を取り出したい場合、「=MONTH(E3)」と入力すればOKです。

MONTH関数の場合
MONTH関数の場合

この場合、取り出した値は数値として扱われます。

LEFT関数、RIGHT関数、MID関数を動画で見る

これで、間にある文字列も簡単に取り出せますね!
それでは、お疲れさまでした!

今回のおさらい
  • 文字列を真ん中から取り出したいときは、MID関数
  • =MID(文字列,開始位置,文字数)
  • 右から数えるには、LEN関数と組み合わせる

数式・関数,Excel

Posted by morino