• ベストアンサー

エクセルの自動計算入力がわかりません

エクセル初心者です。以下のようなイメージで、 生徒が受ける模試あ~うがあり、受ける模試にフラグを立てたら、同時にE列に生徒ごとの合計金額が出るようにするには、E列にどのように入力すればいいですか? 模試の名前と、料金は同じシートのなかに一覧にしています。(一覧表は別シートで作れればなおいいのですが) よろしくお願いします。 A列    B列   C列    D列  E列  氏名   模試あ 模試い  模試う  合計 ○○   1      1            H列   I列 模試あ 2900 模試い 3,000 模試う 2000     

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

計算を簡単にするため 1.今のシートのB1:D1をコピーしてシート2のB1に貼り付けます。つまり模試あ、い、うのように今のシートに出てくる順番で、同じように横に並ぶ体裁で、ということです 2.その下のセル、つまりB2:D2に、それぞれの模試の金額を記入します 3.シート1に戻り、E2には =SUMPRODUCT(B2:D2, Sheet2!$B$2:$D$2) と数式を記入します。

yusahi
質問者

お礼

ありがとうございました。回答して頂いた方はどれもわかりやすくて大変助かりました。御蔭様でうまくいきました。私にとってはどれもベストアンサーにしたいのですが、一番最初に回答して頂いたNo1さんにさせていただきます。感謝しています。

その他の回答 (4)

回答No.5

No.4です。ごめんなさい。一部、不適切な説明をしてしまったので、訂正します。 Sheet1のB~D列に入力される値が「0」、「1」または空白でなくても、同じ模試を複数回受け、毎回同額の料金が支払われたならば、その回数を入力して差し支えありません。その回数分の金額が算出されます。実際と異なる回数とか、記号などを入力すると、エラーとなります。

回答No.4

No.1さんのご回答どおりであり、その式は、次のように書いても同じ意味です。 =b2*sheet2!$B$2+c2*sheet2!$C$2+d2*sheet2!$D$2 なお、これらの式では、Sheet1のB~D列に入力される値が「0」、「1」または空白であることが前提になっています。それ以外の値では正しく計算しませんので、注意してください。 ベストアンサーは辞退します。

yusahi
質問者

お礼

ありがとうございました。わかりやすく解説して頂き、とても勉強になりました。感謝いたします。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

シート1に元のデータが有るとしてシート2にはA2セルから下方に、模擬あ…などが入力されておりB2セルから下方には相当する金額が入力されているとします。 シート1のE2セルには次の式を入力して下方にドラッグコピーします。 =IF(COUNT(B2:D2)=0,"",IF(B2<>"",VLOOKUP(B$1,Sheet2!A:B,2,FALSE),0)+IF(C2<>"",VLOOKUP(C$1,Sheet2!A:B,2,FALSE),0)+IF(D2<>"",VLOOKUP(D$1,Sheet2!A:B,2,FALSE),0))

yusahi
質問者

お礼

ありがとうございました。試してみてうまく行きました。VLOOKUPもまだ勉強中です。よくわからないことがあれば、またここに質問いたします。そのときはどうぞよろしくお願いいたします。

noname#192382
noname#192382
回答No.2

=IF(A2=1,2900,0)+IF(B2=1,3000,0)+IF(C2=1,2000,0) E2のセルに上の式をいれて、したにコピしたら出来ると思います。

yusahi
質問者

お礼

ありがとうございました。大変わかりやすくて助かりました。

関連するQ&A