excel MID 関数:文字列の途中から抽出する
はじめに
excelの MID 関数の使い方を紹介します。
MID 関数は文字列の途中から指定した文字数を抽出します。
文字列の 3 文字目から抽出したいときに使用します。
文字列の先頭から抽出するには「LEFT 関数」を使用します。
文字列の最後から抽出するには「RIGHT 関数」を使用します。
文字列の文字数を取得するには「LEN 関数」を使用します。
構文
MID(文字列, 開始位置, 文字数)
文字列の開始位置から文字数分を取得します。
引数「文字列」 抽出元の文字列を指定します。
引数「開始位置」 何文字目から抽出するかを指定します。
引数「文字数」 抽出する文字数を指定します。
使用例
3 文字目から 2 文字を抽出する
=MID("あいうえお",3,2)
"excel2021508-441-1"

excel開始位置と文字数を変化させて抽出する
=MID(B3,C3,D3)
"excel2021508-441-2"

解説
引数「開始位置」に引数「文字列」より大きい値を指定すると何も抽出しません。
引数「開始位置」に 0 やマイナスの値を指定するとエラー#VALUE!になります。
引数「文字数」に 0 を指定すると何も抽出しません。
引数「文字数」に引数「文字列」を超える文字数を指定すると最後の文字まで抽出します。
引数「文字数」にマイナスの値を指定するとエラー#VALUE!になります。
後ろから何文字目まで抽出する
「LEN 関数」を使用すると文字数を取得できます。これを使って後ろから 3 文字目までといった抽出ができます。
=MID(B3,C3,LEN(B3)-D3-C3+2)
"excel2021508-441-3"

excel日付や時間から抽出する
日付は数値を日付の形式に表示しています。引数「文字列」に日付型のセルを指定したときは、内部で持っている数値を抽出します。
"excel2021508-441-4"

日付の見た目の通りに抽出したいときは「TEXT 関数」で日付を文字列に変換します。
=TEXT(B3,"yyyy/m/d")
=MID(TEXT(B3,"yyyy/m/d"),3,C3)
"excel2021508-441-5"

表示形式はセルの書式設定のユーザー定義を見れば確認できます。
"excel2021508-441-6"

日付の表示形式について詳しくは「日付の表示形式の一覧」をご覧ください。