>実は、別な表でも応用が利くため、式を作りたいという訳があります。
>マウス:590円 キーボード:1,500円 CPU:18,000円の場合に”マウス:”と”円”の間にある、数字部分だけを取り出す式を作りたいのです。
Sheet1のA1セルに"マウス:590円 キーボード:1,500円 CPU:18,000円"と入力されているものとしてSheet2のA列に商品名、B列に価格の数値のみを左から順に抽出することを検証してみました。
Sheet2のA1へ次の数式を入力します。
=MID(Sheet1!A$1,FIND("→",SUBSTITUTE("円 "&Sheet1!A$1,"円 ","→",ROW())),FIND("←",SUBSTITUTE(Sheet1!A$1,":","←",ROW()))-FIND("→",SUBSTITUTE("円 "&Sheet1!A$1,"円 ","→",ROW())))
Sheet2のB1セルには次の数式を入力します。
=VALUE(MID(Sheet1!A$1,FIND("→",SUBSTITUTE(Sheet1!A$1,":","→",ROW()))+1,FIND("←",SUBSTITUTE(Sheet1!A$1,"円","←",ROW()))-FIND("→",SUBSTITUTE(Sheet1!A$1,":","→",ROW()))-1))
Sheet2のA1とB1を下へ3行目までコピーします。
結果は添付画像のとおりです。
尚、今回の検証では4行目までコピーすると#VALUEエラーになります。
エラーを避けるにはExcel 2007以降のとき、IFERROR関数でエラーのとき空欄にすれば良いでしょう。
お礼
ありがとうございます。 mike_gさんのご回答と合わせてしばらく考えてみます。 商品文字列を任意の値に変えて、他の表にも応用できるかやってみます。 大変参考になりました。 実は、私はもう結構な年寄りで、目は見えないし、頭も働かなくなってきています。 そのせいか、物を調べることが下手になっていて、皆様のご教授は本当にありがたいです。 年に負けずに頭の訓練も兼ねて頑張ってやってみます。 老人は頭働かさないとホント、ボケていきます・・・。 Sheet作って式をコピペで試してみたところ、商品名表示の文字数が合いませんでしたが、これくらいは自分で考えて解決させなくっちゃ、です。 しばらく悩んでみますね。