機能と数式 | VBA | セミナー | オンラインソフト | お問い合わせ | その他
Top > Excel > 機能と数式

2番目以降の文字位置を調べる



次のようなデータで、ハイフン(-)から右側を抜き出すには、次のように考えます。



もし、ハイフン(-)の位置が「3文字目」と分かっていたらどうでしょう。



抜き出すのは、ハイフン(-)の右(4文字目)から後ろ全部ですから、次のようにMID関数で抜き出せます。



256 に深い意味はありません。MID関数は、3番目の引数「文字数」に、抜き出す文字数より大きい数を指定してやれば「後ろ全部」という意味になります。今回のケースでは、抜き出したいのは3文字ですから、3より大きい数を指定すればいいです。これには、セルに入力されている文字数を指定する考え方もあります。



しかし、一般的には200文字以上を入力するケースは少ないでしょう。まぁ、適当でもいいです。ちなみにセルには、32,767文字まで入力できます。

さて、ハイフン(-)が何文字目にあるかを調べるには、どうしたらいいでしょう。これには、FIND関数またはSEARCH関数を使います。これらの関数については、下記ページをご覧ください。




ここまでは簡単です。しかし、実務は一筋縄ではいきません。次のようなケースではどうでしょう。



今度は、ハイフン(-)が2つあります。上記のやり方で分かるのは、左側にあるハイフン(-)の位置です。しかしここでは、2番目(右側)のハイフン(-)が何文字目にあるかを知りたいのです。



実は、FIND関数やSEARCH関数には、どこから検索を開始するかという位置を指定することができます。



一般的には、この引数を省略して「1文字目」つまり左端から検索することが多いのですが、今回は次のように考えます。



では、この検索を開始する「4文字目」とは、どういうことでしょう。これは、最初に見つかるハイフン(-)の位置(ここでは3文字目)の、ひとつ右隣なのですから、1を足した文字位置です。



さあ、まとめますよ。よろしいですか?



こういうことです。何度も言いますが、256 に深い意味はありません。キリのいい数字を指定しただけです。





このエントリーをはてなブックマークに追加