• ベストアンサー
  • 困ってます

エクセルで、同セル内の「条件付きの文字」のある「数値の合計」を求めるには?

  • 質問No.2304636
  • 閲覧数419
  • ありがとう数2
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 93% (15/16)

(エクセル2003使用しております。)

全角文字と半角数字の入力された複数のセルがあります。
同じ文字の含まれたセルの「数値の合計」をそれぞれ求めたいです。
つまりFの列に

  F
山田:大阪1
川崎:東京6
山田:名古屋4

という文字が入力されている3つのセルがあるとします。
ここから山田という言葉を選び、さらにその後に続く1と4の数値を合計した数値を求める式が知りたいのです。
(数値は1~10を目安にしております)


過去の似たような質問を参考に文字のセルから数値の合計を入力する関数を探してきました
http://okwave.jp/kotaeru.php3?q=1588802
そちらのm様の回答より
『いろいろな文字があるが、"休"だけを足す場合は、

=SUMPRODUCT(("0"&REPLACE(A1:A5,1,1,))*ISNUMBER(FIND("休",A1:A5)))』

とありましたので、当方は

=SUMPRODUCT(("0"&REPLACE(F4:F65,1,1,))*ISNUMBER(FIND("山田",F4:F65)))

と入力しましたが、数値を導き出すことができませんでした。
どういう式が考えられるかお力をお貸し頂ければと思います。
宜しくお願いします。

++++++++++++++++++++++++++++++++++

また数値が複数になった場合(尚も同セル内)にも対応できる式がありましたらお教え願います。
たとえば

    F
山田:大阪1東京2
川崎:東京6北海道1
山田:名古屋4静岡2

この場合山田で求めると1+2+4+2で9となる式はありますでしょうか。

質問者が選んだベストアンサー

  • 回答No.2
  • ベストアンサー

ベストアンサー率 44% (1383/3079)

#01です。こちらの方が簡単でした。
=SUMPRODUCT(ISNUMBER(FIND($A$1,F1:F3))*VALUE(RIGHT(F1:F3,1)))

書き漏らしましたが#01の式なら
 Shift+Ctrl+Enter
で入力してください
お礼コメント
yamadasann

お礼率 93% (15/16)

ありがとうございます!早速やってみましたが大成功でした。
小難しい式でなかったので照らし合わせながらできました。
聞いてばかりでは申し訳ないので式の応用ができるように励もうと思います。
投稿日時:2006/07/28 14:46

その他の回答 (全2件)

  • 回答No.3

ベストアンサー率 50% (3003/5914)

=SUMPRODUCT((LEFT(A1:A3,FIND(":",A1:A3)-1)="山田")*VALUE(RIGHT(A1:A3,LEN(A1:A3)*2-LENB(A1:A3))))
でどうでしょう。

山田:大阪1東京2
のような場合、通常関数ではムリではないですか
お礼コメント
yamadasann

お礼率 93% (15/16)

回答ありがとうございます。
範囲など直して使用させて頂きましたが失敗してしまいました、なぜでしょう。
↓の式で求められたので問題はないのですが、
この式ではなぜ求められなかったのか気になります。

二つの数字は無理ですか…残念です。
お忙しい中ありがとうございました。
投稿日時:2006/07/28 14:48
  • 回答No.1

ベストアンサー率 44% (1383/3079)

A1に山田が入力されたとき

=SUM(IF(ISNUMBER(FIND($A$1,F1:F3)),VALUE(RIGHT(F1:F3,1)),0))

この式で5を求めることができます。ただし数字は1桁(0~9)に限定されます。

末尾の数字が二桁の場合は、文字列の中で数字だけを分離できないため関数だけでは実現が難しいと思います。また数字が途中にある場合も困難です。
(もう少し考えてみますが…)
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ