• ベストアンサー

Excelで、できますか?

エクセルを使って勤務表を作成していますが、 例えば、9月分の勤務のうち、○○さんの月曜日についている☆マークの数をカウントすることはできますか? いままでは、COUNTIFを用いて毎月○○さんの月曜日の範囲を入力して、やってたのですが何か良い方法はありませんか? COUNTIF(勤務表!$D$4,$A$10)+COUNTIF(勤務表!$G$4,$A$10)+COUNTIF(勤務表!$O$4,$A$10)+・・・・・・ という感じです。 これだと毎月、月曜日の範囲を設定しなければいけないので、良い方法をよろしくおねがいします。 長文ですいません。

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

  • ベストアンサー
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.2

#1です。 > 2人目いこうでは #N&A というエラーが出ます。 どんな関数を書いてエラーになったのか、その関数を省略せずに書きましょう。その方が早いです。 たぶん範囲指定に誤りがあります。 日付の範囲と☆を付ける範囲の列数は同じでなくてはなりません。 1人目 B1~AE1 に 9/1~9/30 と入っていて、☆を付ける欄が B3~AE3 の場合 =SUMPRODUCT((WEEKDAY(B$1:AE$1)=2)*(B3:AE3="☆")) 2人目 B1~AE1 に 9/1~9/30 と入っていて、☆を付ける欄が B6~AE6 の場合 =SUMPRODUCT((WEEKDAY(B$1:AE$1)=2)*(B6:AE6="☆"))

ara55
質問者

お礼

有難うございます。無事出来ました。 日付の範囲と列数が誤っていました。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.1

この手の話はデータをどう持っているかで異なりますので、サンプルデータを出して質問された方が良いです。 1.新規シートのセルB1に 9/1 と入力する。(9月1日と表示される) 2.B1を右クリックし、セルの書式設定-表示形式-ユーザー定義を選び、種類に yyyy/mm/dd (aaa) と入力する。 3.B30までコピーすると下記のようなデータになる。   2004/09/01 (水)   2004/09/02 (木)   2004/09/03 (金)   2004/09/04 (土)   2004/09/05 (日)   2004/09/06 (月)      ・      ・ 4.セルA1に =SUMPRODUCT((WEEKDAY(B1:B30)=2)*(C1:C30="☆")) と入力 5.セルC1~C30に ☆ を入力すると月曜のみカウントして A1 に個数を表示します。 こんな意味ですか?

ara55
質問者

補足

回答有難うございます。 すいません。補足します。    9/1  9/2  9/3  9/4  9/5  9/6  9/7      月  火  水  木  金 土  日 Aさん  ☆  ☆     休  ☆    ☆      ×  □        × × Bさん  ☆  ☆  ☆  ☆  △ △  △         ×  □  □  □    × このような感じの表です。 papayukaさんに教えてもらった、SUMPRODUCT試してみました。やりたいことはそのような感じです。 が、一人目のAさんの場合はうまくいくのですが、2人目いこうでは #N&A というエラーが出ます。日付の範囲はそのままで、記号を入力する範囲をかえるだけではダメなのでしょうか?

すると、全ての回答が全文表示されます。

関連するQ&A