文字列から数字を抜き取る関数・どのようなエクセル関数を入れればいいですか?


B3セル 2,600円
B4セル 決済金額:2,765円


となっています。しかし、B4セルは中身が入っていない空白セルの時もあります。(B3セルは常になんらかの円となっています)
C3セルに、B4セルが中身が入っていないときには、B3セル内の内容の2600という数字を表示させ、
もし、B4セルに今回のように決済金額が入っているときには2765を表示させたいときには、どのように関数を組めばよいでしょうか?

数字は、常にかわります。1円のときもありますし、999,999円のときもあります。千区切りのマークも入ります。

ユーザー関数でない方を希望します。
よろしくお願いいたします。

回答の条件
  • 1人1回まで
  • 登録:
  • 終了:2017/03/18 08:30:12
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:kimuram No.2

回答回数27ベストアンサー獲得回数11

ポイント100pt

基本的に前の方と同じですが、
”B4セルは中身が入っていない空白セルの時も~”
とのことなので、

=IF(B4="",VALUE(LEFT(B3,LEN(B3)-1)),VALUE(MID(B4,6,LEN(B4)-6)))

の感じです。
試してみてください。

id:naranara19

短いのもいいですね!感謝です。

2017/03/18 08:21:45

その他の回答3件)

id:leiurus No.1

回答回数11ベストアンサー獲得回数2

ポイント79pt

まず、B3B4の書式設定をしましょう。

①B3(右クリック) → セルの書式設定 → (左のリストから)ユーザー設定 → (種類:の下の欄に入力)#,##0"円"; → OKクリック
②B4(右クリック)→ 同上 → 同上 → (種類:の下の欄に入力)"決済金額:"#,##0"円"; → OKクリック

これで、B3B4セルは数字を入力するだけで「1,000円」なり「決算金額:2,000円」なり表示されるようになります(日本語部分はつど入力しなくて済みます、というより、日本語部分は入力しないでください)

③C3には=IF(B4>0,B4,B3)を入力(B4のマイナス値はゼロとみなします)

これでご希望の状態になると思います。

他2件のコメントを見る
id:naranara19

ありがとうございます!完璧でした。感謝いたします!!

2017/03/18 08:20:43
id:naranara19

あ、すみません。決済金額が入っているときはそちらの金額を表示させたいので、ちと違ったかもしれません。

2017/03/18 08:27:50
id:kimuram No.2

回答回数27ベストアンサー獲得回数11ここでベストアンサー

ポイント100pt

基本的に前の方と同じですが、
”B4セルは中身が入っていない空白セルの時も~”
とのことなので、

=IF(B4="",VALUE(LEFT(B3,LEN(B3)-1)),VALUE(MID(B4,6,LEN(B4)-6)))

の感じです。
試してみてください。

id:naranara19

短いのもいいですね!感謝です。

2017/03/18 08:21:45
id:nepia11 No.3

回答回数703ベストアンサー獲得回数143

ポイント80pt

=VALUE(IF(B4="",SUBSTITUTE(B3,"円",""),SUBSTITUTE(SUBSTITUTE(B4,"円",""),"決済金額:","")))

これで行けます。
SUBSTITUTEは置き換える関数。
SUBSTITUTE(B3,"円","")は"円"を空白に置き換える、という意味です。

id:naranara19

なるほど。その手がありましたか!

2017/03/18 08:22:37
id:rsc96074 No.4

回答回数4495ベストアンサー獲得回数434

ポイント50pt

 こんな感じでなるみたいですが、何か呪文みたいでわかりにくいので、VBAでユーザー定義関数を作った方が良くないですか。
作るといってもコピペするだけなので。(^_^;

=SUBSTITUTE(MID(B3,MIN(FIND({0,1,2,3,4,5,6,7,8,9},B3&"0123456789")),LEN(B3)),"円","")+0

※参考URL
https://ymyk.wordpress.com/2010/02/09/excel%E3%81%AE%E6%96%87%E5%AD%97%E5%88%97%E3%81%A7%E6%95%B0%E5%AD%97%E3%81%AE%E3%81%BF%E3%82%92%E6%8A%BD%E5%87%BA%E3%81%99%E3%82%8B/

https://kokodane.com/2013_macro_65.htm

id:naranara19

ありがとうございます!VBAは他に使いすぎてましてここでは使いたくないのです。回答感謝いたします!

2017/03/18 08:23:54

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません