• 締切済み

営業日のみの経過日数の求め方

営業日のみの経過日数の求め方 エクセルで土日祝日を除いて、今までの経過日数を出すにはどうしたら良いでしょうか?                 (1)予備のセルに「TODAY」 セル A1 (2)発生した日に日付      セル B2 (3)経過日数          セル C3    (1)ー(2)=(3)経過日数 という風にしたのですが、それだと営業日以外の土日祝日が入ってしまいます。 どのようにすればいいのでしょうか? よろしくお願いします。

みんなの回答

noname#144013
noname#144013
回答No.4

こんにちは。 #2です。 > たとえば開始日が2010/04/15 >     終了日が2010/05/04(TODAY) > だとすると経過日数が-28774日とでます。 これは憶測になりますが、 おそらく、NETWORKDAYS関数の引数に設定している参照元のセルの指定が 間違っている、または、セルの値が、日付の値(シリアル値)として、上手く認識 されていないように思われます。 こちらで、いろいろ試してみた結果、NETWORKDAYS関数の引数に、以下の ような値を設定した場合に、結果が -28774 と表示されました。 ※当方は、Excel2000を使用しています。  開始日付 : 2010/4/15 ←この値は正常  終了日付 : 0           ※参照元のセルを空欄にするか、または、0を入力した場合           ※ここは本来、TODAY関数で返される値  祭日    : 省略           ※祭日を省略した場合は、土・日のみ休日扱いになります。 ですので、質問者さんがご使用のExcelシートのA1セルの値、及び、祭日を 設定しているシートのセル範囲の値が、正しく設定されているか、または、 TODAY関数及びNETWORKDAYS関数の記述が正しいかどうか、再度、確認 された方が良いように思います。 念のため、使用していないセルに以下のような数式を入力して、表示される値 がどうなるか、それぞれ確認してみてください。   =NETWORKDAYS("2010/4/15",TODAY(),祝日!A1:A9)   =NETWORKDAYS("2010/4/15","2010/5/4",祝日!A1:A9)   =NETWORKDAYS("2010/4/15","2010/5/4")   =NETWORKDAYS("2010/4/15",0)   =A1 ←この数式を入力するセルの書式設定の表示形式は「標準」にする。        ※A1セルにTODAY関数が設定【数式: =TODAY()】されているなら、         表示値は 40302 と表示されると思います。         但し、現在日付が 2010/5/4 だった場合 あと、経過日数を表示するセルの書式の表示形式ですが、ユーザ-定義で 例えば、   0"日" とすると、マイナス値の場合でも表示されますが、#1,#3さんの言われるように   dd"日" または、 d"日" とすると、マイナス値の場合、#####~# と表示されます。 以上です。

wine12345
質問者

お礼

詳細をありがとうございます。 書式の設定を頭を冷やして見直してみました。 セルの設定をごちゃごちゃにしてしまっていたようです。 無事 日数が計算できるようになりました!

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.3

> たとえば開始日が2010/04/15 >    終了日が2010/05/04(TODAY) > だとすると経過日数が-28774日とでます。 こちらで祭日を設定しないと14日とでますし、祭日を設定したら11日とでます。 もしかしたら祝日!A1:A9に変な日付が設定されていないでしょうか。 あと、書式設定のユーザー定義でddとした場合負の数値になると####と表示されますが 負の数値が表示されるというのはどのようなユーザー定義にしているのでしょうか。

wine12345
質問者

お礼

ありがとうございます。 ユーザー定義が原因ではなく 終了日の日付を二か所に表記していたため、本来関数に設定するセル(TODAY)ではなく違うセル(TODAYではなく = で引っ張ってきたもの)を関数に入れ込んでいたためにおかしくなっていたようです。 凡ミスです。すみません。ありがとうございました。

noname#144013
noname#144013
回答No.2

こんにちは。 > 終了日のセルに「TODAY」を入れているせいか正しい日数が出ません。 それは、エラー値(#NAME?、#VALUE! など)が表示されるのでしょうか? それとも、想定外の日数が表示されるのでしょうか? #1さんご提示のNETWORKDAYS関数を使用する場合は、下記の点に ついて確認してみて下さい。 まず、ご使用のExcelのバージョンがExcel2003以前だった場合は、 NETWORKDAYS関数を使用するためには、「分析ツールアドイン」を 組み込んでおく必要があります。 →これは、組み込み済みでしょうか? ※分析ツールアドインの組み込み方法は、Excelのヘルプをご覧下さい。 次に、「祭日」の日付を記述したセル範囲を用意する必要があります。 →これは、設定済みですか? ※日付は文字列ではなく、日付・時刻のシリアル値(年月日)として記入  されている必要があります。 次に、数式の記述の仕方ですが、以下のような記述になると思います。 →この記述は正しいでしょうか? <前提事項>  ・現在日付(終了日付:年月日)  : A1  ※注:下記1)の場合のみ  ・発生日付(開始日付:年月日)  : B2  ・経過日数(数式を設定するセル): C3  ・祭日を設定したセル範囲     : E2:E17 <数式の記述例> 1)A1セルにTODAY関数で現在日付を設定している場合   A1: =TODAY()   C3: =NETWORKDAYS(B2,A1,E2:E17) 2)NETWORKDAYS関数の引数で、直接TODAY関数を使用する場合   C3: =NETWORKDAYS(B2,TODAY(),E2:E17) 添付画像は、上記構成のExcecシートの画面例です。 ※見辛かったり、貼れていなかった場合はすみません。 以上です。

wine12345
質問者

補足

ありがとうございます。 >エラー値(#NAME?、#VALUE! など)が表示されるのでしょうか? それとも、想定外の日数が表示されるのでしょうか? 想定外の表示がされます。 たとえば開始日が2010/04/15     終了日が2010/05/04(TODAY) だとすると経過日数が-28774日とでます。(ちなみにユーザー定義で日と表示されるようにしています) Excelは2007でした。 祭日は別シートに作成したので =NETWORKDAYS(B2,A1,祝日!A1:A9) というようになっています。 きっと小さなミスなんでしょうが解消されません。。

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.1

=NETWORKDAYS(開始日,終了日,祭日) を利用してください。 参考 http://www.eurus.dti.ne.jp/~yoneyama/Excel/kansu/today.htm

wine12345
質問者

補足

ありがとうございます! 終了日のセルに「TODAY」を入れているせいか正しい日数が出ません。 発生してから今日現在まで何日たっているかを出したいのですが、 この場合はまた関数が違うのでしょうか?

関連するQ&A

  • エクセルで営業日後の日数計算をしたい

    こんにちは、教えてください エクセルで営業日数の計算て可能でしょうか? たとえば土日祝日を除いた、14営業日後の日付を求めたり、逆に●月●日は何営業日後であるというようなものです できるかどうかわかりませんが、方法があれば教えてください

  • データ入力規則による土日祝日を抜かした2営業日以上の設定方法

    Excelのデータ入力規則による土日祝日を抜かした2営業日以上の設定方法を教えてください。 前任者からの引き継いだもので、申請書があります。 C7のセルに申請日を入力するようになっています。 受け取り希望日を入力するセルにデータ入力規則で以下の値以上のものが 入るように設定されています。 =IF(WEEKDAY(C7,2)<=2,C7+3,C7+5) この設定は、土日祝日を除く3日後(3営業日以降)が入力できるしくみ になっているようです。 こちらを土日祝日を除く2日後(2営業日以降)に設定する場合には、 どのようにすればよいのでしょうか。 まったく、仕組みが理解できず困っています。どういった仕組みなのかもお答えいただければ大変助かるのですが・・・。 お手数ですが、ご教示いただければと思います。 どうぞ、よろしくお願いいたします。 島田

  • ○営業日

    Sheet1のAは製品名をプルダウンから選択するようにし、 そのリストはSheet2のAから成り立つようにします。 Sheet2のBには○営業日と入力されており、 Sheet1で製品名をリストから選択すると、 Bの可能日に土日祝日を除いた○営業日の日付が 自動的に表示されるものを作成したいと考えています。 このような場合は、どのように作成すればいいのか、 もしくはExcelで作成することが可能なのかどうか、 Excelを始めたばかりでよく分かりません。 大変お手数かとは存じますが、どなたかお分かりになる方が いらっしゃいましたら、アドバイス等いただければ幸いです。 「Sheet2」 A   B CD   1営業日 DVD  2営業日 USB  4営業日 「Sheet1」 A       B 製品名    可能日 CD  ▼   2007/4/2(月) 使用OS: WindowsXP 使用Excel: Excel 2003

  • 関数で経過日数を算出したい。

    基準日を1/9とします。   A   B   C   日付 データ  経過日数 ←土日祝を含みます。 1  1/1   な   8日 2  1/4   や   5日 3  1/5   む   4日 A、B列のデータからC列に経過日数を算出する関数をつくりたいのですが、調べたところWORKDAY関数で出来るようですがアドインしないと使えないようです。でも残念なことにインストールCDがありません(オフィス2000)。 なので、もし別の関数で出来るのであればご助言頂きたいです。 よろしくお願いします。

  • 営業日感覚のカレンダーサイト

    フリーのカレンダー関係のサイトで。 例えば「1/20」「10営業日」と入力したら、1/20の10営業日後(土日祝日を除いて10日後)の2/3がはじき出されるようなサイトはないでしょうか?

  • エクセルで休日日数・連休日数を表示するにはどうしたら良いですか?

    休日日数(連休日数)を表示させたいです。 A列には日付がカレンダー通りに並びます。 (日付が飛ぶ・前後するという事はありません) B列にはA列に並んだ日付に対応して土日祝日を判定し、該当する場合1が表示されます。 そこで、C列にB列の小計を出したいのですが、どうしたら良いでしょうか? (例 単独の休日なら1、土日なら2、土日を含む3連休なら3) 但し、表示箇所は小計するセルの2行上(2日前)のセルとしたいです。 よろしくお願いします。

  • エクセルで作業期間の日数を計算したい

    エクセルについて質問です。 セルA1に開始日(例:2012/2/20) セルC1に終了日(例:2012/5/12)を入力し、この期間の日数(○○日間)を 計算する方法を教えて下さい。 更にこの期間で、「土日祝日を除いた日数(平日のみの日数)」と 「日曜祝日を除いた日数(平日+祝日でない土曜日の日数)」を算出する方法も教えて下さい。 ちなみに作業日数を計算するのに、DAYS360関数を使ってみましたが、 1年を360日として計算するので、正確な日数になりません。 また、曜日や休日が絡むとどんな関数を使えば良いのか全くわかりません。 よろしくお願いいたします。

  • エクセルでの日数の計算

     こんばんは。エクセルで指定の日付から今日現在のに数を求めるやり方で分からないことがあり質問します。 ・A1のセルに今日の日付を、 =TODAY() と入れました。 ・A2のセルに指定日の日付(例えば2006/03/15)と入れました。 ・A3のセルに =DATEDIF(A2,$A$1,"D")と入れました。 A3のセルには指定日から今日までの日数が表示されます。  そこで質問ですが、A4のセルに指定日から今日の5日後の日数を、A5のセルに指定日から今日の5日前の日数を表示したいのですが、どの様に入力したらよいのか分かりません。やり方を教えてくださいお願いします。 

  • 【Excel97】経過日数の計算で、土日・祝日を抜かして計算したい

    表記のとおりです。 「○○月○○日~○○月○○日」という日数計算を出してくて、今はただ引き算で経過日数を出してるだけなんです。そうすると必要のない土日や祝日も入ってしまうので、それを除いた経過日数を出す関数はどのようにすればいいのでしょうか。 私は関数にはうとくて、「こういう数式にすれば」また「こういう表示形式にすれば」と具体的に教えていただけれると嬉しいです。

  • エクセルで経過日数(ビジネスday)を算出したい。

    エクセルで経過日数(ビジネスday)を算出したい。 エクセルで受付から回答までの日数を算出したいのですが、 土、日、祝日を除いた、実可動日を算出することは可能ですか? ご存知の方がいましたらご教授お願いします。m(__)m

専門家に質問してみよう