- ベストアンサー
エクセルで出席簿の集計
Ryokuchaの回答
- Ryokucha
- ベストアンサー率25% (115/450)
複数の条件で、個数を数えるには SUMPRODUCT関数を使います =SUMPRODUCT((B1:M5="国語")*(B2:M2="出席")) B1:M5には科目の行を指定(国語、数学・・・1週間分) B2:M2にはその生徒の出欠結果の行を指定 します。(BとかMは説明用で適当です) これでその生徒の国語の出席回数が求められます。
関連するQ&A
- Excelで出席簿
頼まれて出席簿を作る事になりました。 普段あまりExcelは使わないので、早速つまってしまいました。ご教授ください。m(__)m A B C D ・・・ X Y Z AB 1 1日 2日 3日 31日 出席 欠席 開講数 2曜日 月 火 水 水 3太郎 4花子 こんな感じです。 出席は無記入で、欠席の時に斜線(スラッシュ)を引く形で、休日は日曜日・祝日です。 で、質問は出席・欠席の合計数を出すための方法です。 今は出席合計欄に=COUNTBLANK(B3:G3,I3:N3,…:X3)と、欠席合計欄に=COUNTA(B3:X3)と入力していますが、これだと出席合計欄の計算式を毎月直す必要があります。(日曜日を省くため) もっと簡単に合計数を出せる方法はありますでしょうか? Excel2000、WinMeです。 あ、日曜・祝日はセルを色で塗りつぶしています。 お願いします。
- ベストアンサー
- オフィス系ソフト
- Access2003 クロス集計で集計値を四捨五入
☆以下のようなテーブルで、フィールド[ID]~[点数]があり、文字および数字のデータが混在しています。 ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ =========================================== (テーブル(1)) [ID] [クラス] [科目] [点数] 1 A 英語 11 2 B 英語 22 3 C 数学 33 4 A 国語 44 5 B 数学 55 6 C 国語 66 7 B 国語 77 8 C 英語 88 9 A 数学 99 =========================================== ☆上記のテーブルをクロス集計クエリで集計する ・フィールド[クラス]を行見出しに設定、 ・フィールド[科目]を列見出しに設定、 ・フィールド[点数]を集計する項目にし主計方法を「合計」に設定する。 =========================================== [クロス集計結果] 合計 英語 国語 数学 A 154 11 44 99 B 154 22 88 55 C 187 99 77 33 =========================================== [課題] クロス集計クエリで、集計値を四捨五入する (1) フィールド[クラス]を行見出しに設定、 フィールド[科目]を列見出しに設定、 フィールド[点数]を集計する項目にし主計方法を「合計」に設定する。 (2) クロス集計の値を、下1桁で四捨五入した値を表示する。 (3) 「合計」の値を、下1桁で四捨五入した値を表示する。 ※ クロス集計した合計値を、四捨五入した値を表示する ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ =========================================== [クロス集計結果] 合計 英語 国語 数学 A 150 10 40 100 B 150 20 80 60 C 190 90 70 30 =========================================== ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ 上記のように、クロス集計クエリでの集計値を四捨五入して 表示させたいのですが、どうすればよろしいでしょうか? また、クエリだけでは出来ない場合は、SQLで教えていただければ 幸いでございます。 お手数お掛けしますが、何とぞ宜しくお願い致します。
- ベストアンサー
- その他MS Office製品
- エクセルの関数について質問です。
以下のようなエクセルの表があります。 列:生徒氏名 行:生徒が履修する科目名 各セルに各生徒が履修する科目の開講曜日・時限 国語 算数 理科 社会 重複 生徒1 水1 木2 月3 生徒2 水3 火4 生徒3 月5 金4 月5 生徒4 金2 金2 火4 各生徒が履修する科目の曜日・時限が重複していないかを「重複」欄に表示できるようにしたいのですが、どのような関数を使えばよいでしょうか。 どうぞよろしくお願いします。
- 締切済み
- Excel(エクセル)
- アクセス クロス集計と単純集計の齟齬について
すみません、質問させてください。 アクセス2010を使用しています。 下記のような元の表があります。 ID 試験科目 試験形式 合否(1/0) 当該科目選抜試験参加(1/0) 1 国語 タイプ1 1 1 1 国語 タイプ2 0 1 1 国語 タイプ3 1 1 2 国語 タイプ1 0 0 2 国語 タイプ2 0 0 2 英語 タイプ1 0 1 ※学生は5教科のなかから任意の科目を最低1教科、最大5教科受験しています。 ※各教科には複数の試験形式があります。(例えば国語なら、国語の中でタイプ1~3の複数の試験がある)どれか一つのタイプの試験で合格すると、次の選抜試験に参加する「権利」を得ます。 ※選抜試験参加は任意(希望した者のみ参加)です。また、複数の教科で合格していても、選抜では一人一科目のみしか参加できません。(つまり、英語と国語で合格していても、どちらか一科目の選抜試験のみにしか参加できない。合格しても参加しない者もいる) ※同一教科の複数タイプの試験を受け、タイプ1合格、タイプ2不合格で、選抜試験に参加した場合、タイプ2のレコードにおいても選抜試験参加のフラグがたっている。 このような状況で下記のような集計をしました。 1、元の表から、クエリでID、科目、当該科目選抜試験参加を抜き出し、「固有のキー」をオンにし、科目別選抜試験参加者を重複抜きで抽出した一覧(表A)を作成。 選抜試験参加者を科目ごとに単純集計(集計1)。 2、元の表から、クエリでID、科目、合否=1のみを抜き出し、「固有のキ」ーをオンにし、科目別合格者(選抜試験未参加を含む)を重複抜きで抽出した一覧(表B)を作成。 3、複数の科目で合格した学生が、選抜試験に参加したのか、したとしたらどの教科の選抜試験に参加したのかを集計するクロス表として、 表AとBのクロス集計を行ない、 行=表Aの科目名でグループ化 列=表Bの科目名でグループ化 値=表Aの選抜試験参加フラグをカウント として実行しました。 目的は下記のような、「国語に合格した生徒のうち、国語(もしくは他の各教科)の選抜に参加した生徒は何人か」がわかるようなクロス表(表C)を作ることです。 合格した科目 国語 英語 数学 理科 社会 選 国語 10 抜 英語 50 参 数学 1 加 理科 1 科 社会 20 目 大体それらしい数字が出たのですが、表Cの斜めの列=つまり国語で合格し国語の選抜を受けた生徒の数、と、集計1で集計した数が合いません。 何が問題なのでしょうか。 長い説明ですみませんが、どうぞご教示をお願いします。 当方Access素人で、SQLというのはどこに記述すればいいのかも、よくわかっていません。 具体的な操作を含めて教えてくださいますと大変助かります。
- 締切済み
- その他MS Office製品
- 成績の合計を集計するSQLを考えています。
成績の合計を集計するSQLを考えています。 下記のようなテーブルをAccessで作成しました。 ID 科目 学期 中間 期末 学年 性別 0001 001 01 30 32 1 男子 0001 002 01 20 31 1 男子 0001 003 01 22 23 1 男子 0001 001 02 30 11 1 男子 0001 002 02 23 33 1 男子 0001 003 02 22 23 1 男子 ID 生徒を識別 科目 001=国語 002=数学 003=理科 学期 01=前期 02=後期 中間 科目のテスト結果を入力 期末 科目のテスト結果を入力 ※学期ごとに中間と期末があります。 下記のように学期別に同学年かつ同性の科目ごとの合計を集計する SQLを考えています。 期 性別 国語 理科 社会 前期 男子 200 250 300 前期 女子 110 200 340 後期 男子 150 230 360 後期 女子 170 250 350 学期別に集計をすることは出来たですが、さらに性別で分けることができませんでした。 アドバイスお願いします。 また、現在は SELECT [学年], iif( [学期]=1,"前期","後期") AS [学 期], Sum(IIf([科目]=1,[中間]+[期末],0)) AS [国 語], Sum(IIf([科目]=2,[中間]+[期末],0)) AS [数 学], Sum(IIf([科目]=3,[中間]+[期末],0)) AS [理 科] FROM テーブル名 GROUP BY [学年], [学期]; のようなSQL文を作成しました。
- 締切済み
- その他(プログラミング・開発)
- ACCESSでクロス集計風に表示したい
以下の様なテーブルを 科目 テスト 得点 ------------------ 国語 1中間 50 国語 1期末 60 国語 2中間 55 国語 2期末 65 国語 3期末 70 英語 ・ ・ ・ ・ ・ ・ ・ ・ 数学 1中間 70 数学 1期末 80 数学 3中間 75 数学 2期末 70 数学 3期末 85 以下のような表形式で表示したいと考えてます。 1中間 1期末 ・ ・ 2期末 3期末 国語 60 55 ・ ・ 65 70 英語 ・ ・ ・ ・ ・ ・ 数学 70 80 ・ ・ 70 85 クロス集計クエリで見た目は上記の表形式になったのですが、 表示されるデータシート?で値の編集が出来ませんでした。 (集計結果なので当然?) 科目及びテストは今後追加される可能性が高いので テーブルまたはフォームを固定で持つことは出来ません。 何か良い方法はないでしょうか?
- 締切済み
- その他(データベース)
- エクセル:月や週ごとの集計
エクセルで A列に日付、B列に曜日、C列に商品の数量があります(2年分が連続で入力されています) このシートで曜日ごとの集計(例えば9月4日から9月9日までの合計)や 7月だけの合計を出す為の関数か機能はありますか WIN xp エクセル2003
- 締切済み
- Windows XP
- Excelでの集計表の作り方
Excelで1ヶ月の集計表を作っていますがどうしてもわからない事があります。まず縦に1ヶ月分の日付を入れて横に純売上(B列)と消費税(C列)と総売上(D列)の表を作りました。日付は月を入力すると自動で変わる様にして月末も30日までの月は最後のセルも空白になる様に、土日祝は曜日の文字の色も変わります。その後が問題なんですが、曜日毎の集計を自動計算するだけならSUMIF関数ですぐに出来るんですが日祝の合計を1つのセルに集計させたいんです。月によって祝日の曜日も変わりますしどうしてもその方法がわかりません。説明が下手で申し訳ありませんがわかる方がいればお願いします。
- ベストアンサー
- その他(インターネット・Webサービス)
- 各週ごとに集計したいのですが
一応検索をしましたが見つからなかったので質問します。 一応下記のような表を作っているのですがここから各週の 集計をしたいのです。 日付 曜日 A B C 合計 1 土 2 日 3 月 1 3 4 4 火 2 2 2 6 5 水 4 4 6 木 1 1 1 3 ・ ・ ・ 各週の集計表 月 火 水 木 金 第1週 第2週 第3週 第4週 第5週 上の表の合計を下の集計表へ転記させたいのですが 曜日ごとに組み込む方法がよくわかりません。 曜日はWEEKDAY関数で1から7までで表せますが、第 1週、第2週と正確に転記させる方法がわかりません。 関数を調べましたがこちらの要求どおりに動いてく れる関数は見つかりませんでした。もしかしたらマ クロを作らなければならないのかもしれませんがVBA は良くわかりません。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- 素人目に見事なプログラム。
public class test11 { public static void main(String[] args) { int[] [] points = new int[4][10]; points[0] = new int[] { 27, 53, 82, 77, 37, 61, 84, 72, 25, 91 }; points[1] = new int[] { 54, 76, 96, 39, 18, 45, 89, 92, 68, 88 }; points[2] = new int[] { 54, 69, 81, 57, 49, 67, 76, 81, 67, 89 }; for (int i = 0; i < points[0].length; i++) { points[3][i] = points[0][i] + points[1][i] + points[2][i]; } for (int i = 0; i<points[0].length; i++) { System.out.println("出席番号" + (i + 1) + "番の生徒の成績"); System.out.println("国語 :" + points[0][i]); System.out.println("数学 :" + points[1][i]); System.out.println("英語 :" + points[2][i]); System.out.println("合計 :" + points[3][i]); System.out.println("-----"); } } } 実行結果 C:\WORK>javac test11.java C:\WORK>java test11 出席番号1番の生徒の成績 国語 :27 数学 :54 英語 :54 合計 :135 ----- 出席番号2番の生徒の成績 国語 :53 数学 :76 英語 :69 合計 :198 ----- 出席番号3番の生徒の成績 国語 :82 数学 :96 英語 :81 合計 :259 ----- 出席番号4番の生徒の成績 国語 :77 数学 :39 英語 :57 合計 :173 ----- 出席番号5番の生徒の成績 国語 :37 数学 :18 英語 :49 合計 :104 ----- 出席番号6番の生徒の成績 国語 :61 数学 :45 英語 :67 合計 :173 ----- 出席番号7番の生徒の成績 国語 :84 数学 :89 英語 :76 合計 :249 ----- 出席番号8番の生徒の成績 国語 :72 数学 :92 英語 :81 合計 :245 ----- 出席番号9番の生徒の成績 国語 :25 数学 :68 英語 :67 合計 :160 ----- 出席番号10番の生徒の成績 国語 :91 数学 :88 英語 :89 合計 :268 ----- いつも大変お世話になっております。 教えてもらってばかりで恐縮です。 上記、Javaプログラムの件。 どうしてこうなるのか解りません。 どなたか解説してくれませんか? 真夜中にすみません。 ご回答のほど宜しくお願い申し上げます。
- ベストアンサー
- Java
お礼
おおっっ!! SUMPRODUCTですかぁ! 意外と簡単にできますね。 わかりやすい説明ありがとうございました。 この辺の関数には弱いもので(^^;) 勉強してレパートリーに入れたいです。