Excelで文字列の中のの○文字目から○文字分取り出したい場合の方法を記録します。
○文字目から○文字分取り出す場合は、「MID」関数を使います。
○バイト目から○バイト数で取り出す場合は、「MIDB」関数を使います。
< スポンサーリンク >
MID関数、MIDB関数構文
MID関数:文字数を返す
文字列の指定された位置から指定された文字数の文字を返します。
MID(文字列, 開始位置, 文字数)
MIDB関数:バイト数を返す
MIDB 関数は、文字列の任意の位置から指定されたバイト数の文字を返します。
MIDB(文字列, 開始位置, バイト数)
文字列は必須。取り出す元の文字列を指定。
開始位置は必須。文字列から取り出す先頭文字の位置を数値で指定。
文字数は必須。取り出す文字数を指定。
バイト数は必須。取り出すバイト数を指定。
開始位置が文字列の文字数より大きい場合は、空白文字列(””)が返されます。
開始位置が文字列の文字数より小さく、開始位置と文字数の和が文字列の文字数を超える場合、開始位置から文字列の最後までの文字が返されます。
開始位置が1より小さい場合、エラー値 #VALUE! が返されます。
文字数やバイト数に負の数を指定すると、エラー値 “VALUE! が返されます。
MID関数は、既定の言語の設定に関係なく、1バイト文字も2バイト文字も、各文字が常に1つとして数えられます。
MIDB関数では、DBCSをサポートする言語の編集を有効にした後でその言語を既定の言語として設定した場合に、各2バイト文字が2つとして数えられます。それ以外の場合は、各文字は1つとして数えられます。DBCSをサポートする言語には、日本語、簡体字中国語、繁体字中国語、および韓国語があります。
文字列の中間から文字を取得する例
例:MID関数(文字数)
A列に入力された文字列から3文字目から2文字分取り出す関数をB列に入力し表示します。
=MID(A1,3,2)
例:MIDB関数(バイト数)
A列に入力された文字列から3バイト目から4バイト分取り出す関数をB列に入力し表示します。
=MIDB(A1,3,4)
開始位置のバイト数を偶数にした場合は、元の文字が全角だと1バイト目が空白になってるようです。
=MIDB(A1,2,4)
こんな記事も書いています