- ベストアンサー
Excel2000関数でセミナーの売り上げを計算する方法
- Excelの関数を使って、セミナーの売り上げを計算する方法を教えてください。
- 特別コース、一般コース、準特別コースの参加料が異なるセミナー参加申し込み確認についてです。
- 単純に○の数に金額をかけるのではなく、数種類の料金を○にかけて売り上げを計算する方法が知りたいです。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
補足拝見しました。 最初の質問と全然違うじゃないですか^^; 最初からこう質問してくれれば、一発で回答が出たと思いますよ。 まず、Aコースの特別計のセルに =SUMPRODUCT(($B$2:$B$6="特別")*(C$2:C$6="○")) と入力してください。 (ただし、数式内の$6の部分2箇所は、実際の最終行に書き換えてください。) このセルを下方に3つコピーし、"特別"をそれぞれ"準特別"、"一般"、"無し"に書き換えてください。 この4つのセルを選択し、右方向にコピーすれば完成です。 あとこれは今後のためのテクニックです。 このような集計の場合、合計欄に「特別計」のように「計」の文字を入れてしまうと、上記で示したように、種類の数だけ式を手直ししなければならなくなります。 合計欄には「特別」「準特別」のように、そのままの値になっていれば、「特別」の計は =SUMPRODUCT(($B$2:$B$6=$B9)*(C$2:C$6="○")) で表すことができ、これを下方と右方にコピーするだけで済みます。 どうしても表示に「計」を付けたければ、「特別」から「無し」を選択して、セルの書式設定で「ユーザ定義」「@計」とすれば「特別計」のように表示できます。 頑張ってくださいヽ(^。^)ノ
その他の回答 (6)
- misatoanna
- ベストアンサー率58% (528/896)
#5の追加です。 もしご質問の中でダブっている「準特別」が、記入ミスではなく、同じ 項目があった場合にはそれら足し込む、というのでしたら、更に H1 に =IF(COUNTIF($A$1:A1,A1)>1,"",SUMIF($A$1:$A$5,A1,$G$1:$G$5)) と入力して下方にコピーします。
補足
ご回答ありがとうございます。 私の説明不足でご迷惑をおかけして申し訳ございません。 #2さまの補足をご参考に、もう一度ご教授頂けないでしょうか? よろしくお願いいたします。
- misatoanna
- ベストアンサー率58% (528/896)
A1:A5の各コースの料金が、上から順に 50,30,40,20,40 だとした場合ですが、 G1セルに =COUNTIF(B1:F1,"○")*CHOOSE(ROW(),50,30,40,20,40) と入力して G5 までコピーします。
補足
ご回答ありがとうございます。 私の説明不足でご迷惑をおかけして申し訳ございません。 #2さまの補足をご参考に、もう一度ご教授頂けないでしょうか? よろしくお願いいたします。
- imogasi
- ベストアンサー率27% (4737/17069)
補足要求 (1)準特別が3と5で2回出てくるわけは? (2)この表そのものが、受講者1人についてのデータ なのか、複数の受講者の受講データをまとめたものですか。 (3)「4無し」とはなんでしょう。 (4)・>B~F列に書かれたのは、コースです。 ・>特別コースは参加料が50円で、準特別が40 円と 縦軸(列方向)か横軸(行方向)のどちらがコースですか B-F列は受講者ではないですか? 関数では解が出ているのでVBAでの解を上げます。 ツール-マクロ-VBEでVBE画面になり、そのメニューの挿入-標準モジュールで画面が出ます。そこに下記をコピーして貼りつける。 単価がG列に入れてますが、H列ならCells(i, "G") ->Cells(i, "H")のように変える。 For j = 2 To 6 'B列からF列まで->For j = 2 To 7 'B列からG列までに変えること。 Function aaa() t = 0 For i = 1 To 1000 '最多1000行まで If Cells(i, "A") = "" Then Exit For For j = 2 To 6 'B列からF列まで If Cells(i, j) = "○" Then t = t + Cells(i, "G") '単価はG列にあると仮定 End If Next j Next i aaa = t End Function そして合計を出したいセルに=aaa()と入れると金額合計 がでます。
補足
ご回答ありがとうございます。 私の説明不足でご迷惑をおかけして申し訳ございません。 #2さまの補足をご参考に、もう一度ご教授頂けないでしょうか? よろしくお願いいたします。
- snoopy64
- ベストアンサー率42% (337/793)
1行目には項目名があって、質問のデータは2行目以降だとします。 H列に料金(H2=10、H3=20、、、H6=50)を入れます。 B7に =SUMPRODUCT((B2:B6="○")*1,$G2:$G6) と入れます。合っていたら、B7をF7までコピーします。 こういうことではないですか?・・・はずしてます?
補足
ご回答ありがとうございます。 私の説明不足でご迷惑をおかけして申し訳ございません。 #2さまの補足をご参考に、もう一度ご教授頂けないでしょうか? よろしくお願いいたします。
- SAKURAMYLOVE
- ベストアンサー率30% (162/533)
理解不足の点もあるかもしれませんが、各コースの料金をB列に追加し、例えばAコースは、 50(特別)+準特別(40)+無し(20)=110と解釈して回答します。 (表の上と左は、行列番号です) A B C D E F G 1 料金 Aコース Bコース Cコース Dコース Eコース 2 特別 50 ○ ○ 3 一般 30 ○ ○ ○ 4 準特別 40 ○ ○ ○ ○ 5 無し 20 ○ ○ 6 準特別 40 ○ ○ ○ Aコース(C列)の合計は、配列数式で求めます。 =SUM(($B$2:$B$6)*((C2:C6)="○")) と入力し、SHFT+CTRLを押しながら、エンターキーを押しますと、 {=SUM(($B$2:$B$6)*((C2:C6)="○"))} と表示されます。 あとは、フィルハンドル(セルの右下のくろぽっち)を右方向にドラッグして、 Bコース以降の合計を出します。 もし、内容で違っているところがあったら、補足してください。
補足
ご回答ありがとうございます。 私の説明不足でご迷惑をおかけします^^; ●コースは4つあります。 ●コースの左には参加者の欄があります。 (端折ってしまい申し訳ございません) ●参加者は50名くらいです。 質問文と上記内容を総合して簡単に書かせて頂くと、 A B C D E F G 1 名前 Aコース Bコース Cコース Dコース Eコース 2 山田 特別 ○ ○ 3 川田 一般 ○ ○ ○ 4 松本 準特別 ○ ○ ○ ○ 5 鈴木 無し ○ ○ 6 大山 準特別 ○ ○ ○ ・ ・ ・ 特別計 ?人 ?人 ?人 ?人 準特別計 ?人 一般計 無し計 と言った感じです。 各コースの合計を出したいのです。 B列と各コースが一致する物の合計を下に出したいのです。 度々よろしくお願いいたします。
- RAPTsong
- ベストアンサー率42% (74/175)
どこかに小計を持たせて、最後にサマリをとる
お礼
ご回答ありがとうございます。
お礼
度々のご回答ありがとうございます。 ご教授の通りで無事に完結致しました。 また、何かあったらよろしくおねがいします^^