• ベストアンサー

日にちのカウント

1か月(添付 7月)の日曜日と祝日を除いた日数を セルE37にカウントしたいのでが教えてください。 関数のことはよく解らないので、説明を添えていただくとうれしいです。添付のカレンダーも教えて もらい作りました。宜しくお願いします。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.7

No.4・5です! ほんとぉ~っに!何度もごめんなさい。 前回の数式では終了日をB35セルにしていますので、小の月には対応できないと思います。 そこで前回までの方法と一緒ですが、終了日が大の月・小の月両方に対応できる数式にしてみました。 表示したいセルに =NETWORKDAYS(B5,MAX(B5:B35),H4:H19)+COUNTIF(C5:C35,"土") としてみてください。 数式の意味はNETWORKDAYS関数はNo.4で説明したとおりで、 終了日は表示されているシリアル値の最大値(月末)にしています。 (2月及び大の月の行数を考えると、MAX関数の範囲指定は最後の4行だけでも構いません) 尚、日付で表示されると思いますので数式を入力後、セルの表示形式は「標準」にしてください。 親の仇のように何度も顔を出して失礼しました。m(_ _)m

その他の回答 (6)

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

A2:A32に2011年7月の1日ー31日の日付があるとします(日付シリアル値であること) 一方G1:G10とかに2011年の祝日日付を作っておきます。(日付シリアル値であること) =SUMPRODUCT((WEEKDAY(A2:A32)<>1)*1)-SUMPRODUCT((MONTH(G1:G5)=7)*1) で除く日曜27日から祝日1日を引いて26日になります。 G1:G5 2011/5/5 2011/5/6 2011/7/21 2011/9/15 以上は5,7,9月の祝日の1部で、手抜きしてます。 本当は1年間分でも祝日をG列に作っておくと良い。この表は毎年見直さないといけない苦しさはありますが、これ以外どうしようもないです。 また祝日は、表を使わないで、祝日を判定する関数など無く、これ以上スマートには行きません。別方法でWorkday関数を使うにしても、表のようなデータをユーザーが定義しないとダメです(世界各国違います)。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.5

NO.$です! たびたびごめんなさい! 投稿した後で大きな間違いに気づきました。 「土」の数をマイナスではなくプラスしなくてはいけませんでした。 NETWORKDAIS関数ですでに「土」の数は入っていなかったのでマイナスではなく、プラスです。 数式を =NETWORKDAYS(B5,B35,H4:H19)+COUNTIF(C5:C35,"土") に訂正してください。 何度も失礼しました。m(_ _)m

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.4

こんばんは! 土日・祝日を除いた日数をカウントする関数としてNETWORKDAYS関数というものがあります。 ※ 当方使用のExcel2003以前のバージョンですと メニュー → ツール → アドイン → 「分析ツール」にチェックを入れておく必要があります。 この関数を利用した一例です。 せっかく曜日まで表示するように関数でお考えのようですが、曜日のC列に一手間加えます。 B列がシリアル値だと思いますので、 C5セルに =IF(B5="","",TEXT(B5,"aaa")) という数式を入れオートフィルで下へコピーしておきます。 (○曜日まで表示したい場合は aaa の部分を aaaa とします) これで「土」の数がカウントできますので、 表示したいセルに =NETWORKDAYS(B5,B35,H4:H19)-COUNTIF(C5:C35,"土") としてみてはどうでしょうか? 尚、数式の意味は NETWORKDAYS(開始日,終了日,祝日) ← これで開始日~終了日の間の土日・祝日を除いた日数が表示されます。 (祝日データを空白にすれば、土日を除いた日数となります) それから「土」の数を引いています。 上記の数式の結果は当方の画面では「15」となっています。 参考になれば良いのですが・・・m(_ _)m

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.3

 B4:C35の表を使わずとも、B1セルとB2セルにおける年と月の指定さえあれば、次の関数で、日曜日と祝日を除いた日数を、求める事が出来ます。 =SUMPRODUCT((MONTH(DATE(SUBSTITUTE($B$1,"年",),SUBSTITUTE($B$2,"月",),ROW(INDIRECT("Z1:Z31"))))=SUBSTITUTE($B$2,"月",)+0)*(WEEKDAY(DATE(SUBSTITUTE($B$1,"年",),SUBSTITUTE($B$2,"月",),ROW(INDIRECT("Z1:Z31"))))>1)*(COUNTIF($H:$H,DATE(SUBSTITUTE($B$1,"年",),SUBSTITUTE($B$2,"月",),ROW(INDIRECT("Z1:Z31"))))=0))

  • hrt_shu
  • ベストアンサー率42% (27/64)
回答No.2

すいません、こちらのリンクでお願いします。 http://myb35.web.fc2.com/excel/sample.xlsx

0103mrtaro
質問者

お礼

カレンダーから日にちのカウントでご指導いただき、有難うございました。 リンクから見させていただきました換算表には、正直びっくりしました。 たいへんお手間を取らせてしまい、頭が下がります。 自分のような初心者には、たいへん勉強になる換算表です。 今後も別の形で利用し、参考にさせていただきます。 これからも、ご指導ご鞭撻を宜しくお願いいたします。

  • hrt_shu
  • ベストアンサー率42% (27/64)
回答No.1

こちらにサンプルプログラムをアップしておきました。 参考にしてください。

参考URL:
https://skydrive.live.com/?cid=80c1a8d480008788&permissionsChanged=1&id=80C1A8D480008788%21193#

関連するQ&A

  • 赤文字の入ったセル数をカウントしたい。

     社員勤務のシフト表カレンダーを、EXCEL2013で作ろうとしています(BOX型)。  作ったカレンダーは、給与が20日締めですから、例えば、9月のカレンダーは、8月21日始まり、9月20日終了という形式です。 祝祭日と日曜日の日にちは、赤文字で表示してあります。  次に、月間総労働時間を算出するために、該当のセル範囲(G20:S20)の中から、労働時間から除外すべき日数=【『赤文字で表示した祝祭日と日曜日』が入った(セルの数)】を、カウントし、例えば、セルE26に、=○○(G20:S20,3)の形式を用いて表示させたいと思います。VBAを使いたいのですがうまく作れません。ご教授下さい。 《整理》 1.セル範囲(G20:S20)中の月間総労働時間を算出したい。 2.労働時間から除外すべき祝祭日と日曜日は、赤文字で表記させている。 3.この赤文字の入ったセル数をカウントしたい。 4.表示形式は、=○○(G20:S20,3) 5.VBAを使いたい。 《追記》 祝祭日と日曜日を赤文字に表記させた作業工程は、次の通りです。 (1)日曜日は、予めFontを赤に設定、(2)祝日は、「条件付き書式」を使いFontを赤に設定、(3)8月21日より、9月20日までの期間外の日にちは、Fontを白に設定し、見えないようにしました。 < 使用 Excel:Excel2013、使用 OS:Windows10 >

  • 色がついていないところをカウントする方法

    こんにちは エクセルで年間カレンダーを作成しました 土日祝日には赤でセルに色がつけられています (ずーと横一列に続くカレンダーです) 上半期、下半期、年間トータルでの出勤日をカウントするのに、何かよい方法はありませんか? COUNTA関数で、土日祝日を含めたトータルは出せますが、土日祝日を省いたトータルは無理ですよね? COUNTIF関数で、セルを色づけした部分をCOUNT・・・のような設定に出来ればベストかな?と思っているのですが、色を条件にする方法が分かりません どうしても無理な場合には COUNTA関数で区切って範囲を指定する方法になるのかなと思っていますが 今後のことも考えて 何か良い方法があればお願いします

  • カウント関数を教えて下さい

    添付画像のような資料についてです。 チームごとの一ヶ月の稼働日数をカウントしたいです。 普通のカウント関数を使ってその合計を足してしまうと、例えば(4)チームの場合の赤文字の10/1や10/4がだぶってしまいます。 一つのチームが一日に数回稼働していても、日数としては『1』とカウントしたいのです。 どのような関数で求めれば早いでしょうか。

  • エクセルで毎年、日にちが異なる祝日(成人の日等)の返し方

    エクセルでカレンダーを作成しようとしていますが、 つまづいてしまったので、どなたか教えていただけないでしょうか A1セルに指定年月日(例:平成19年1月1日)と 入力したら、該当月の日にちと曜日を表示させ 土日はセルの色を変えるというところまで できたのですが、さらに出勤しない日(国民の祝日)も セルの色を変えたいと思っています。 カレンダーとは別のシートなどに国民の祝日リストを 作成し、条件付き書式でmatch関数を利用して、 国民の祝日リストに合致したセルも色を変えたいのですが、 元旦やこどもの日のように月日が決まっている祝日ではなく 成人の日や海の日など、ある月の第2月曜日という祝日の場合、 A1セルの指定年月日から当該年の成人の日等を返すことは できるのでしょうか? 説明がわかりにくいかもしれませんが、要は、 A1セルが2007/1/1の時に B1セルに当月の第2月曜日を返す C1セルに7月の第2月曜日を返す ということは可能なのでしょうか? よろしくお願い致します。

  • 診断書の休んだ日数はどうカウントされますか?

     この度、病気診断書で休んでいましたが、診断書の日数に日曜日、祝日、指定休も込みでカウントされてました。  日曜日等は、本来休日扱いですが、これは仕方がないんでしょうか?  納得できない物を感じますが、詳しい法律面を教えて下さい。

  • 日付をカウントする

    24/9/10 24/10/1 24/8/25 24/10/4 24/7/5 24/10/9 24/10/1 という具合に日付がたくさん入力されているセルがあります。 セルは和暦で入力しているつもりですが 実際は2024/9/10と入力されています。 エクセルのバージョンは2003です。 この中で、一つは各月のセルの数をカウントしたいと思います。 これであれば24/10は4になります。 その際、24/7、24/8、24/10というセルを作って それを参照して関数式を作りたいと思いますがどうすればいいでしょうか? 次に各月の日数をカウントしたいと思います。 例えば10/1、10/1、10/2、10/5、10/5、10/8と入力されていれば 日数は10/1、10/2、10/5、10/8の4になります。 つまり日付がダブった場合は1と数えたいんです。 これもできれば24/10というセルを作ってそれを 参照した関数式を作れればと思います。 どうすればいいでしょうか?

  • 日曜、祭日をカウントする

    勤務表をweekday関数で月間カレンダーをsheet1に作成しております。 別のshee2に祭日を作成して、条件つき書式でsheet1に日曜・祭日は赤になるように設定しました。赤色をカウント(VBAで作成)しようしても、条件付き書式では、赤をカウントしません。セルを選択後、塗りつぶしたセルはカウントしますが。 祭日.日曜日の勤務時間合計を計算したいのです。 row1列に2009/4/1から2009/4/30まで入力 row2列に(=text(A1,"aaa")で曜日入力してます。 row3列に時間を入力しております。 column1行には担当者指名入力しています。 日曜祭日にはrow1で日曜。祭日は赤に塗りつぶします。 よろしくお願いします。 ※条件つき書式の塗りつぶしの色とセルの塗りつぶしは違うのでしょうか?回答いただいた自作のFunction関数を使用しました。

  • 条件付き書式で反映した休日のデータを数えたい

    条件付き書式とCOUNTIF関数を使用して、休日が塗りつぶしされるように設定をしています。 その塗りつぶしされたセルのうち、「大阪」「南部」と入力された個数をカウントしたいのですが、関数のみでカウントできればいいなと思ってます。 休日は別シートの「祝日」と名前を付けた部分に登録しています。 COUNTIFで「祝日」が参照され、塗りつぶしされるまではできたのですが・・・ 添付の通りでいけば、8日と16日にそれぞれ「南部」「大阪」とあるので「休日出勤数」をカウントして「2」と。 休日ではない土曜日において「休」とある1日と15日を「出土休み日数」をカウントして「2」と。 塗りつぶしが流動的なので、フィルターを使用するのかなんなのか、さっぱりわかりません。 関数のみで対応できればいいなと思っています。 どなたか、教えてください。

  • エクセル 日数計算 特定の日だけカウントしない2

    お尋ねします。 計画からの遅れ日数を計算したいと思っています。 休日は入れません。営業日(稼働日)のみでカウントします。 ただし、土曜日は基本的に営業日(稼働日)です。 日曜日と祝日だけを除いた日数の計算をしたいのです。 例)  12/23~1/15 の 日曜と特定の休日(12/29~1/5)除いた日数の計算 networkday等つかうと、土曜日も休日となってしまうため、困っています。 どなたか知恵を貸してくださいませんでしょうか? よろしくお願いいたします。

  • Excelでのカレンダー作成について

    Excelでカレンダー(1カ月分)を作っているのですが、祝日に色を付けるのがどうしてもうまくいきません。 祝日の日付を入れたセルを用意したのですが、1つ関数につき1日分しか色をつけれませんでした =COUNTIF((1),(2))>=1 (1)祝日の日付を入れた複数の範囲のセル (2)カレンダーの日付のセル[1日分] これでやると1カ月分すべてのセルに対して1日ずつ条件を入れなければならないです。 (2)で1カ月分の日付の範囲をすべて選択してみたのですが、うまく表示されませんでした(>_<) どのような関数をつかえば、1カ月分すべての祝日の色を変えることが出来るでしょうか? 回答お願いしますm(_ _)m

専門家に質問してみよう