プロが教える店舗&オフィスのセキュリティ対策術

エクセル2010を使用しています。
A3のセルの中にバス代とJR代が含まれています。
B3にJR代、C3にバス代を計算したいです。
JRのみ、バスのみ、バスを2回乗り換えるといった場合もあります。
1つの乗り物毎にAltとEnterで改行しています。
アドバイスをお願いいたします。

「エクセルで1つのセルの中にあるバス代とJ」の質問画像

A 回答 (5件)

ちょっと修正


× 6桁以内(1000000以下) 桁区切りありなら10,0000以下(変更可能)
○ 6桁以内(999999以下) 桁区切りありなら9,9999以下(変更可能)
桁数の変更は B3セルの場合で2か所
B3セルに
=IF(ISERR(FIND("JR往復",ASC(A3))),0,LOOKUP(10^9,MID(ASC(A3),FIND("JR往復",ASC(A3))+4,{1,2,3,4,5,6,7,8})*1))
    • good
    • 0

検索語は「バス往復」、「JR往復」または「JR往復」


「バス往復」は2個まで
「JR往復」または「JR往復」どちらか1個まで
検索語の直後に金額が入ること(↓桁数が変わってしまうので)
6桁以内(1000000以下) 桁区切りありなら10,0000以下(変更可能)

このような条件を確認するだけでも大変なので表の変更をお勧めしますが
B3セルに
=IF(ISERR(FIND("JR往復",ASC(A3))),0,LOOKUP(10^7,MID(ASC(A3),FIND("JR往復",A
SC(A3))+4,{1,2,3,4,5,6})*1))

C3セルに
=IF(ISERR(FIND("バス往復",A3)),0,LOOKUP(10^7,MID(A3,FIND("バス往復",A3)+4,{1,2,3,4,5,6})*1)+
IF(ISERR(FIND("♪",SUBSTITUTE(A3,"バス往復","♪",2))),0,LOOKUP(10^7,MID(A3,FIND("♪",SUBSTITUTE(A3,"バス往復","♪",2))+4,{1,2,3,4,5,6})*1)))

B3:C3セルを下へオートフィル
「エクセルで1つのセルの中にあるバス代とJ」の回答画像4
    • good
    • 0
この回答へのお礼

いろいろ考えていただきありがとうございました。お世話になりました。表を変更します。

お礼日時:2015/12/18 13:10

無理やりやるなら、


「バス往復」の文字列がA3セル内で何文字目にあるかを調べ、そこから何文字目に「円」が初めに出るかを調べ、その間の数値を引っ張り出す。
「JR往復」の文字列がA3セル内で何文字目にあるかを調べ、そこから何文字目に「円」が初めに出るかを調べ、その間の数値を引っ張り出す。
になるだろう。
SEARCH関数やFIND関数で「~往復」「円」の文字列が先頭から何文字目にあるかを調べ、MID関数で抜き出すというやり方。
MID関数は、
=MID (文字列,開始位置,文字数)
のように使うので、
=MID (A3,開始位置,文字数)
として、開始位置と文字数にSEARCH関数とFIND関数で得られた値を入れれば良い。
FIND関数は、
=FIND(検索文字列,対象,開始位置)
のように使うので、
=FIND("バス往復",A3,1)
これで「バス往復」の文字がA3セルの遷都から何文字目にあるのかが分かる。
=FIND("円",A3,=FIND(検索文字列,対象,開始位置))
これで「バス往復」の後に続く「円」場所が分かる。
あとは算数で金額が書かれている文字が何番目から何番目までにあるかが分かる。

=MID (A3 , FIND("バス往復",A3,1)+4 , FIND("円",A3,=FIND(検索文字列,対象,開始位置))-5 )+0

…だろうか。
※ MID関数の後ろに「+0」が付くのは、文字列として抜き出された「運賃」を数値に変換するため。

・・・
目で見て手入力した方が絶対に早い。
    • good
    • 0
この回答へのお礼

いろいろ考えていただきありがとうございました。お世話になりました。

お礼日時:2015/12/18 13:08

セル A3 の記事から「そんな計算を Excel でするのはやめておけ」が、私からのアドバイスです。

    • good
    • 1
この回答へのお礼

ありがとうございました。お世話になりました。

お礼日時:2015/12/18 13:07

めちゃくちゃ無理をすればできますが、基本的には無理です。


根本からExcelの使い方を間違っています。
Excelはワークシートです。
複数のセルから1つの答えを作る用法が多いものです。
このように1つのセルから複数のデータを作ることはほとんどないです。
最初からJRとバスは別セル、できれば別列に入力しておくべきでした。
表示時に表のような形式にすることは簡単にできます。
    • good
    • 0
この回答へのお礼

ありがとうございました。お世話になりました。

お礼日時:2015/12/18 13:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!