- ベストアンサー
エクセルの自動計算入力がわかりません
エクセル初心者です。以下のようなイメージで、 生徒が受ける模試あ~うがあり、受ける模試にフラグを立てたら、同時にE列に生徒ごとの合計金額が出るようにするには、E列にどのように入力すればいいですか? 模試の名前と、料金は同じシートのなかに一覧にしています。(一覧表は別シートで作れればなおいいのですが) よろしくお願いします。 A列 B列 C列 D列 E列 氏名 模試あ 模試い 模試う 合計 ○○ 1 1 H列 I列 模試あ 2900 模試い 3,000 模試う 2000
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
計算を簡単にするため 1.今のシートのB1:D1をコピーしてシート2のB1に貼り付けます。つまり模試あ、い、うのように今のシートに出てくる順番で、同じように横に並ぶ体裁で、ということです 2.その下のセル、つまりB2:D2に、それぞれの模試の金額を記入します 3.シート1に戻り、E2には =SUMPRODUCT(B2:D2, Sheet2!$B$2:$D$2) と数式を記入します。
その他の回答 (4)
- MarcoRossiItaly
- ベストアンサー率40% (454/1128)
No.4です。ごめんなさい。一部、不適切な説明をしてしまったので、訂正します。 Sheet1のB~D列に入力される値が「0」、「1」または空白でなくても、同じ模試を複数回受け、毎回同額の料金が支払われたならば、その回数を入力して差し支えありません。その回数分の金額が算出されます。実際と異なる回数とか、記号などを入力すると、エラーとなります。
- MarcoRossiItaly
- ベストアンサー率40% (454/1128)
No.1さんのご回答どおりであり、その式は、次のように書いても同じ意味です。 =b2*sheet2!$B$2+c2*sheet2!$C$2+d2*sheet2!$D$2 なお、これらの式では、Sheet1のB~D列に入力される値が「0」、「1」または空白であることが前提になっています。それ以外の値では正しく計算しませんので、注意してください。 ベストアンサーは辞退します。
お礼
ありがとうございました。わかりやすく解説して頂き、とても勉強になりました。感謝いたします。
- KURUMITO
- ベストアンサー率42% (1835/4283)
シート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))
お礼
ありがとうございました。試してみてうまく行きました。VLOOKUPもまだ勉強中です。よくわからないことがあれば、またここに質問いたします。そのときはどうぞよろしくお願いいたします。
=IF(A2=1,2900,0)+IF(B2=1,3000,0)+IF(C2=1,2000,0) E2のセルに上の式をいれて、したにコピしたら出来ると思います。
お礼
ありがとうございました。大変わかりやすくて助かりました。
お礼
ありがとうございました。回答して頂いた方はどれもわかりやすくて大変助かりました。御蔭様でうまくいきました。私にとってはどれもベストアンサーにしたいのですが、一番最初に回答して頂いたNo1さんにさせていただきます。感謝しています。