• ベストアンサー

日曜日の日数計算

いつもお世話になります。 エクセルであるセル(A1とする)に 2008年1月23日12:00と入れて また違うセル(A2とする)に 2008年2月11日17:00と入力して このA1、A2の2つセル間(日数)にかかった日曜日の数(この場合は3)を計算させるには どうしたらよろしいでしょうか。 ご存知の方がおられましたらおしえてください。

  • dsb00
  • お礼率85% (107/125)

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

  • ベストアンサー
noname#140971
noname#140971
回答No.3

日付__________________________曜日___次の日曜日までの日数___自分を含む次の日曜日 2008年1月23日12:00______3_______________________________4____2008/01/27 2008年2月10日17:00______7_______________________________0____2008/02/10 2008年2月11日17:00______1_______________________________6____2008/02/17 曜日=WEEKDAY(CutStr(A2, "日",1) & "日",2) 次の日曜日までの日数=7-B2 自分を含む次の日曜日=TEXT((CutStr(A2,"日",1)&"日")+C2,"yyyy/mm/dd") 同じ要領で、_自分を含む前の日曜日を求めます。 後は、両者を引き算して7で除算した商に+1。 CutStr(A2, "日",1) & "日" と 自作関数で切り取っていますが、これはエクセルの関数に置換して下さい。 ※しかし、ANo1さんのシンプルな回答が一番でしょうね。

dsb00
質問者

補足

詳しい説明有難うございます。 関数を自分で作る”自作関数”ですが、 いまいち使いこなせません。 今回の質問ですが、自分の部署が仕事を請けて、次の部署に引き渡すまでの時間をエクセルで管理するのに稼動しない日曜日を引いてやるのが、目的でした。 助かりました。有難うございます。

その他の回答 (4)

noname#140971
noname#140971
回答No.5

=INT((A2-(A1+(7-WEEKDAY(A1,3))))/7)+1 先の回答を1式にまとめれば上のようになります。 ただ、<自分を含む前の日曜日を求める>代わりに端数を切り捨てています。 多分、これを展開すれば・・・

dsb00
質問者

お礼

たびたび有難うございます。 関数のヘルプなどを参考に自分でも考えて見るつもりです。 有難うございました。

noname#176215
noname#176215
回答No.4

日付はシリアル値で入力しないと話にならないので A1セルに「2008/1/23 12:00」と入力 A2セルに「2008/2/11 17:00」と入力 表示形式を ユーザー定義で「yyyy"年"m"月"d"日"h:mm」 という前提で話を進めます。 日曜日の数なら =INT((A2-A1+WEEKDAY(A1,3)+1)/7)

dsb00
質問者

お礼

ご回答有難うございます。 シリアル値の件まで有難うございます。 関数は思ったほどシンプルでINTとWEEKDAYしか使わないと いうわけですね。 仕事を何時間でできるかというのをエクセルで管理するというのが、目的で、日曜日の日数をひいてやらなければなりませんでした。 有難うございました。

  • suz83238
  • ベストアンサー率30% (197/656)
回答No.2

とりあえず、 =IF(WEEKDAY(A1,1)=1,INT((DATEDIF(A1,B1,"MD")+1)/7+1),INT((DATEDIF(A1,B1,"MD")+1)/7)) でやってみて

dsb00
質問者

お礼

早速の回答有難うございます。 とりあえずやってみました。 いろんなやり方があるものと、少し驚いております。 自分の部署が仕事を請けて、仕事を他部署に渡すまでの時間を計るのが目的で、稼動しない日曜日をその時間から引いてやるのが、今回の質問の目的でした。 助かりました。

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

たしか =INT((A2-WEEKDAY(A2))-(A1-WEEKDAY(A1))/7 で、表示形式を数値にすれば、良かったと思います。 確認の上、ご使用下さい。

dsb00
質問者

お礼

有難うございます。 関数WEEKDAYを使うということですね。 業務上、ある仕事を受け付けて他部署に渡すまでの 時間をエクセルで管理するのが目的で、日曜日は稼動しないので、 自動的に引いてやらなくてはなりませんでした。 助かりました。

関連するQ&A

  • 日数の計算について

    いつもお世話になっています。 セルA1に入力した年月日を開始日として セルB1に入力した年月日を最終日とします。 1.その間の日数を開始日を含んだ日数でセルC1に入力したい。 2.もしA1とB1に何も入っていない場合は何も入れない状態にしたい こんなときはどんな関数を使えばかんたんに出来るでしょうか? 説明がいまいち下手ですみません。 よろしくお願いします。

  • エクセルで日数計算

    エクセルで例えば、セルA1に「6月1日」、A2に「6月10日」と入力しています。 セルA3にかかった日数(この場合、6月1日から10日までなので、「10」)を自動的に入力されるようにしたいのですが、どのようにすればそのようにできますか??? 詳しい方教えてください。

  • エクセルで日数を計算したいんですが、

    エクセルで日数を計算したいんですが、 「月」と「日」を別のセルに入れています。 A1セル=月 B1セル=日 (例) A1セル B1セル 4月     10日 5月     13日 この4月10日から5月13日の間の日数を数えたいのですが セルが分かれていても計算することって可能ですか? 初歩的な質問で恐縮ですが教えて下さい! よろしくお願いします!

  • ある日数後の月、日を計算したい

    お知恵を拝借下さい。 エクセル2003を使用しています。 あるセルに日数が数値で入っています。例120 またあるセルには指定の月が入っています。 例12 その2つから、出来る限り簡素な関数を使って 指定月から、120日後の<月>をセルAに、 また、125などが入力されている場合もある為、 セルBには120日後の<日>を表示させることは可能でしょうか。 出来れば、アドイン⇒分析ツールを使わない方法で御願いします。

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

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

  • 関数式?残日数の自動計算

    Excel で年末までの残日数を計算させたいのですが、どのようにするのでしょう? セルのA1に「9月20日」などと日付を入力したときに、A2で「103日」と出るようにしたいのですが、教えてください。

  • excelで合計日数の出し方を教えて下さい。

    はじめまして、 今まではdatedifを使って日数を求めることができました。 この場合 例、セルa1に開始日とb1終了日を入れればc1に合計日数が計算されました。 そこで新たにセルごとに年、月、日を入力して同じように合計日数が計算されるようにしたいのです。 例、セルa1に年(2009)、a2に月(3)、a3に日(6)=開始日   セルb1に年(2009)、b2に月(4)、b3に日(28)=終了日   セルc1に合計日数が計算(54)日数 となるように作りたいのですがどなたか教えて下さい。 宜しくお願いします。

  • エクセルで日数を計算したい

    エクセルで、日数を計算したいと思っています 例えば1つのセルに7/1と入力し、もう一つのセルに7/3と入力すれば、計算式を入力したセルに3日と出てくるみたいな・・・。 どのような計算式を入力すればできますでしょうか?

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

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

  • エクセルで日数計算

    エクセル2003で、 A1に「5月10日」 B1に「8月3日」 と入力したとして C1に5月10日~8月3日までの日数(両端入れ) で自動的に計算してくれる関数ってありますか? よろしくお願いします。

専門家に質問してみよう