• ベストアンサー

エクセルで出席簿の集計

*********************************************   曜日時間 月1 月2 … 金5 金6 集計 科  目 国語 数学   数学 国語 国語 数学 生徒あ  出席 欠席   出席 出席 0  1 生徒い  欠席 出席   欠席 欠席 2  1 ********************************************* のような場合、金曜6時間目の右側に、 1週間分の集計の列をつくり、 科目ごとの欠席の数を合計したいのですが、 どうしたら良いでしょうか? もし都合がよいならば、「出席」を「0」、 「欠席」を「1」と入力することは可能です。 なるべく作業セルなど使わずにシンプルに したいのですが。 よろしくお願いします。

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

  • ベストアンサー
  • shiotan99
  • ベストアンサー率68% (140/203)
回答No.4

こんにちは~ > もし都合がよいならば、「出席」を「0」、 >「欠席」を「1」と入力することは可能です。 ということでしたら、「出席」 「欠席」 を入力するセルをすべて選択した状態で、メニューの 「書式」-「セル」-「表示形式」タブ 「分類」 から <ユーザー定義>を選び、右の 「種類」ボックスに、 [=0]"出席";[=1]"欠席 と入れてください。( "出席" と [=1] の間にセミコロン「;」が入ります ) これで、0 を入力すれば 「出席」、1を入力すれば 「欠席」 とセルには表示されます。 「出席」 「欠席」 は表示だけで、実際のデータは 0 または 1なので、単純に足し算をすれば、欠席日数を求めることができます。 念のため、0 と 1以外は入力できないように、もう一度 出席状況のセルをすべて選択した状態で、メニューの 「データ」-「入力規則」-「設定」タブ 「入力値の種類」 から<整数> 「データ」 から <次の値の間> 「最小値」 に 0 「最大値」 に 1 と入力してください。 これで 0 と 1 以外は入力できなくなります。 ■科目別の集計方法 生徒氏名が A列、B1から右に曜日、2行目が科目名で、出席状況が3行目から入っているとします。 集計がどの列から始まっているのかわからないので、 ここでは仮に出席状況が K列まで、集計がL列からだとします。 L2 から右に集計用の科目名を入力してください。 L3に =SUMIF($B$2:$K$2,L$2,$B3:$K3) と入れて、右に科目数分フィルコピー そのまま下に生徒人数分フィルコピーしてください。 ★絶対参照($)のつけ方に気をつけてください。( L$2、$B3:$K3 です ) ★セル位置は実際の表に合わせて変更してください。

aroi-aroi
質問者

お礼

なるほど、表示形式をこんな風に使うやり方が あるんですね!目から鱗です。 それから、SUMIFって横方向にも 使えたんですね?! 勝手に縦方向だけと思いこんでいました。 丁寧でわかりやすい説明、ありがとうございました。

その他の回答 (3)

  • Ryokucha
  • ベストアンサー率25% (115/450)
回答No.3

複数の条件で、個数を数えるには SUMPRODUCT関数を使います =SUMPRODUCT((B1:M5="国語")*(B2:M2="出席")) B1:M5には科目の行を指定(国語、数学・・・1週間分) B2:M2にはその生徒の出欠結果の行を指定 します。(BとかMは説明用で適当です) これでその生徒の国語の出席回数が求められます。

aroi-aroi
質問者

お礼

おおっっ!! SUMPRODUCTですかぁ! 意外と簡単にできますね。 わかりやすい説明ありがとうございました。 この辺の関数には弱いもので(^^;) 勉強してレパートリーに入れたいです。

  • naochoko
  • ベストアンサー率36% (11/30)
回答No.2

すいません、回答したnaochokoですが、ご質問内容をよく読んでなかったようで・・・ 科目ごとの欠席の数の集計ですね。 それでしたらVLOOKUPかな? でもその場合、縦の表にして、さらに並べ替えしなければいけないはずなので無理ですね。 また方法を思いついたら回答しますm(__)m

aroi-aroi
質問者

お礼

そうなんです~。 表の向きは変えたくないんです。 また、よろしくお願いしま~す。 ありがとうございました。

  • naochoko
  • ベストアンサー率36% (11/30)
回答No.1

とても簡単ですよ! 右端の合計列に、COUNTIFという関数を使います。 まず一番上の合計のセルにカーソルを合わせて、挿入→関数をクリックし、関数の中から「COUNTIF」を選びます。 「範囲」のところで集計したい部分を選び(たとえばセルE3が合計の場合、A2:E2とか)、「検索条件」のところに"欠席"と入力します。 この場合、必ず前後に"をつけてくださいね! これでOKをクリックします。 すると集計できているはずです。 あとは合計の列の一番下までこの数式をコピーペーストすれば表の完成です。 注意点はとにかく、日本語の検索条件を入れる場合は必ず""をつけることです。

関連するQ&A

専門家に質問してみよう