• ベストアンサー

Excelによる土日と祝祭日の算出関数

役所でExcelを人並みに使っていると思いますが,最近になって色々と関数を駆使しようと思いついたのが,Excelによる土日と祝祭日の算出関数です。色々と試みてみたのですが,全く×です。セルに対してどのようにすればいいのかヨロシクご教授ください。

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

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

>Excelによる土日と祝祭日の算出関数です 質問の意味が2つに取れる(算出?) (1)ある日を考えて土か日か祝日か判定する場合    =WEEKDAY("2004/12/15")か=WEEKDAY(A1)のように   聞いて    土  7    日  1   かどうかで判る。コードの表現種類に他2種類ありま  す。   祝日は各国固有で日本は年により移動するので、関数   がなく、関数では判定できない。ユーザー関数を作る   よりほかない。万年向けのものは難しそう。 (2)ある期間を考えて、土日祝日を除いて、それ以外が   何日あるかを算出する関数    NETWORKDAYS関数があります。    NET(正味の)のWORKDAYの意味でNET   WORKのDAYではない。最後のSを落とさない   ように。   ただし祝祭日は関数内に手入力で指定する。   例えば=NETWORKDAYS("2004/12/15","2004/12/25",{"2004/12/23"})で7と出ました。 土日と祝祭日と重なっていてもOK。 「アドイン」関数なので、エラーが出る場合は組みこむ必要があります。 あとWORKDAY、DATEDIFを使えれば、日付関係はほぼ全てでしょう。      

endo5412
質問者

お礼

素早く対応していただきありがとうございます。貴重なアドバイス大変役立ちました!!さっそく仕事に生かしております。

その他の回答 (4)

  • OMP
  • ベストアンサー率23% (132/553)
回答No.4

算出した結果をどうするか不明なので勝手に考えました。 残念ながら祝日には対応してません。 A1のセルに入っている日付が土または日の場合 "1"を表示させる関数です。 =IF(WEEKDAY(A1)=7,1,IF(WEEKDAY(A1)=1,1,0)) WEEKDAY(A1)は、土曜なら7、日曜なら1を返します。 それをIF文にはめただけです。

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

こちらあたりを参考にされては? http://www.atmarkit.co.jp/fwin2k/win2ktips/383workday/workday.html

回答No.1

土日に限らず、曜日を判定するのは weekday(日付)です。 祝日は判定できないので、別途テーブルを用意するのがいいでしょう。 もしくは、1月、9月第3月曜とか、10月第2月曜とかで判断するしかないですね。 この場合もweekday()で判定できます。 使い方の質問じゃなくて、関数だけだよね。 使い方はHELPで確認してください