• ベストアンサー

Excelで 土日以外の曜日のセルをカウントできますか?

エクセル2002使用で至急教えていただきたいことがあります! 1列に曜日が「月火水木金土日月・・」と順番に1か月分並んでいるのですが、そのなかで「土日以外のセルの数」をカウントしたいのです。 Countif関数を使用してこのような結果を出せるのでしょうか?? すみませんが、どうぞよろしくお願いいたします!!

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

  • ベストアンサー
  • hinebot
  • ベストアンサー率37% (1123/2963)
回答No.1

「月火水木金土日月・・」と並んでいるのは、月~日の漢字(文字列)ですよね? 少々面倒ですが 例えば、データの範囲がA1~A30のとき =COUNTIF($A$1:$A$30,"月") から =COUNTIF($A$1:$A$30,"金") まで、5つつくり、それをSUM関数で合計すれば、とりあえず要求は満たしますね。 (もっと、うまい方法があるかも知れませんけど)

その他の回答 (4)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.5

いつも回答に出る配列数式で試してみました。 A1セルに2003/10/1といれ、A43までフィルハンドルで引っ張りA45に=COUNT(IF(WEEKDAY(A1:A43,2)>5,1,""))といれ、ShiftキーとCTRLキーを押しつつEnterキーを押す。式が{と}で囲まれA45は12となりました。 10/5,10/12,10/19,10/26,11/2,11/9の6回X2(土日)で合っているようです。 土日以外なら =COUNT(IF(WEEKDAY(A1:A43,2)<6,1,""))で上の例では31です。

marikoro
質問者

お礼

みなさんご解答どうもありがとうございます。 いろんな方法を教えていただき、大変助かりました!! 失礼ながらここでまとめて御礼申し上げます。

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.4

こんにちは。maruru01です。 =COUNTA(A1:A30)-COUNTIF(A1:A30,"日")-COUNTIF(A1:A30,"土") =SUMPRODUCT((A1:A30<>"日")*(A1:A30<>"土")) =SUMPRODUCT(ISNUMBER(FIND(A1:A30,"月火水木金"))*1) =SUMPRODUCT(ISERROR(FIND(A1:A30,"土日"))*1) などです。

  • telescope
  • ベストアンサー率54% (1069/1958)
回答No.3

曜日を手入力で「月火水木金土日月・・」としている場合、 =COUNTA(A2:A31)-COUNTIF(A2:A31,"土")-COUNTIF(A2:A31,"日") で求められます。 また、日付が入力されていて、となりのセルに曜日を表示させるなら、 たとえば、A2セルからA31セルに日付が入力されていて、B2セルからB31セルに曜日を表示させる場合、 B2セルに =WEEKDAY(A2,2) として、「書式」-「セル」で「ユーザー設定」に aaa と入れれば、A2の曜日が表示されます。 aaaa とaを4文字にすると「月曜日」のように「曜日」まではいります。 B2セルをB31セルまでコピーします。 WEEKDAY関数は、曜日を数値で返します。 =WEEKDAY(シリアル値,種類) 種類を2とした場合、 1 (月曜) ~ 7 (日曜) の範囲の整数が戻り値になりますので、上記の例では6(土曜)、7(日曜)以外の日数をカウントするわけですから、6以下の日数をカウントすればよいわけで =COUNTIF(B2:B31,"<6") とすればカウントできます。 また、単に曜日を表示するだけでカウントする必要がなければ、 B2セルに =A2 として、セルの書式を aaa にすれば「月」のように表示させることもできます。

  • laputart
  • ベストアンサー率34% (288/843)
回答No.2

曜日の次の列に曜日判断用に使用して その合計を計算するのがわかりやすいと思いますが。 例えばA列に曜日が入っているとして B3には =IF(A3="土",0,IF(A3="日",0,1)) とします。 他のB列もコピーしてB列の合計を計算します