• ベストアンサー

Excelで特定の文字があれば計算をさせたい

ExcelでA列に文字、B列に人数(数値)が入っていて、A列に特定の文字があれば、C列にB列を使った計算をさせる方法を教えてください。 例えば   A列 1 コンテスト小学生部門Aグループ 2 フェスティバル小学生部門Aグループ 3 コンテスト中学生部門 4 コンテスト高校生部門 5 フェスティバル小学生部門Bグループ 6 フェスティバル高校生部門 7 コンテスト小学生部門Bグループ 8 フェスティバル中学生部門 9 コンテスト高校生部門   ・   ・ と順番はバラバラで60団体くらい続いている表があるとして、A列に小学生とあれば参加料@500、中学生とあれば@800、高校生とあれば@1,000で、C列に合計の参加料を出したいのです。 A列の部門を細かく分ければ簡単な様な気はするのですが、それを分けずに出来る方法はないでしょうか? 関数などあまり知りませんので、よろしくお願いします。

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

  • ベストアンサー
  • maron--5
  • ベストアンサー率36% (321/877)
回答No.3

◆単価なら =SUM(COUNTIF(A1,{"*小学生*","*中学生*","*高校生*"})*{500,800,1000}) ◆単価×金額なら C1=B1*SUM(COUNTIF(A1,{"*小学生*","*中学生*","*高校生*"})*{500,800,1000}) ★下にコピー

nyan0528
質問者

お礼

回答ありがとうございます。 関数の意味はあまり分かっておりませんが、私のしたいことがスッとでき助かりました。

その他の回答 (2)

回答No.2

>A列の部門を細かく分ければ簡単な様な気はするのですが、それを分けず… というのが、データが多くて大変だからという理由だけであると仮定し、 >関数などあまり知りませんので というのが、関数は使いたくないなぁ… というのであれば、次の様な方法を使うと簡単。 メニューバーから データ フィルタ オートフィルタを選びます。 A列に出た▼印をクリックしてオプションを選び まず 小学生 を 含む でセレクト 小学生だけの行が表示されますので、新たな部門列を作成するなり あるいは 単価列 を作成するなり あるいは 今度だけ出来れば いいなら いきなり =人数×500 の式を入れちゃうなり… 次に 中学生 を 含む でセレクト … これなら関数は要りません。

nyan0528
質問者

お礼

回答ありがとうございます。

  • calltella
  • ベストアンサー率49% (317/635)
回答No.1

セルC1に下記を入力すればOKです。 =IF(MID(A1,SEARCH("生",A1,1)-2,3)="小学生",500,IF(MID(A1,SEARCH("生",A1,1)-2,3)="中学生",800,IF(MID(A1,SEARCH("生",A1,1)-2,3)="高校生",1000,0))) あんまりスマートじゃないけど・・・

nyan0528
質問者

お礼

回答ありがとうございます。

関連するQ&A