• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel2007関数 日をまたぐ時刻の計算)

Excel2007関数 日をまたぐ時刻の計算

MarcoRossiItalyの回答

  • ベストアンサー
回答No.6

日付の導入について、ご質問にお答えします。 日付にも、時刻と同様、シリアル値が振られています。1900年1月1日(日)を1とし、その翌日が2、翌々日が3、…となっている自然数の数列です。 例えば、今日、セルに「3/12」と入力すると、Excelはこれを勝手に今年の日付だと判断してくれます。そのセルの書式によって、「日付」の書式「H24.3.12」とか、「ユーザー定義」の書式「3月12日」など様々に表示されます。入力後のセルにカーソルを置いていると、数式バーに「2012.3.12」などと表示されているので、数式バー内をクリックすることで他の年に編集することも可能です。 さて、2012年3月12日が入力されているセルの書式を「標準」にした場合、「40980」と表示されます。これがこの日のシリアル値です。つまり、1900年1月1日から数え始めて40,980日目であることを意味します。明日のシリアル値は1増えるので「40981」となります。 以上の説明と、「時刻は1日を1とする小数がシリアル値」ということを併せて考えると、どうしたらいいか見えてきたのではないでしょうか?例えば「2012年3月12日の23時」を1つの数で表すことができるのではないでしょうか?そう、足し算をすればいいですね?もしA1に「3/12」が、D1に「23:00」と入力されているならば、E1に「=a1+d1」と入力すれば、この瞬間の値が求められます。ただ、入力直後はE1の書式が時刻などに自動設定されたりするので、シリアル値を見るためには「標準」などに変更してあげましょう。「40980.95833」と表示されるので、1900年1月1日午前0時から40980.95833日後という言い方もできるでしょう。 あとは簡単ですね?上のようにして求めた2つの時点を表す小数どうしで、引き算するだけです。引き算を計算するセルに「時刻」の書式を設定しておけば、何時間何分という具合に表示されます。 また、この方法では、IFによる場合分けは不要で、とにかく引けばいいということになります。24時間でも48時間でも、1年後でも問題ありません。働きすぎにご注意(笑) それから、日付の入力の仕方が上とは異なっている場合も説明しておきます。A1、B1、C1の3つのセルに「2012」、「3」、「12」と入力されていることにより2012年3月12日を表している場合です。その場合、DATE関数というのを使うと、日付のシリアル値に変換できます。 「=date(a1,b1,c1)」あるいは「=date(2012,3,12)」とセルに入力し、そのセルの書式を「日付」などにします。「標準」ではやはり「40980」と表示されます。D1とH1に時刻が入力されている場合なら、「=date(e1,f1,g1)+h1-date(a1,b1,c1)-d1」などと計算してもいいですね。 ※Excelでは、文字列以外の式の入力において、大文字と小文字を区別する必要はありません。

dradra33
質問者

お礼

MarcoRossiItaly様 かなりご丁寧な説明ありがとうございます。 特に「シリアル値」のご解説がよく分かりました。 アドバイス参考にさせていただきます。 助かります。

関連するQ&A

  • エクセルの関数で、開始時刻と終了時刻のセルに対して、その差が何時間何分

    エクセルの関数で、開始時刻と終了時刻のセルに対して、その差が何時間何分かを表示できるようなものはあるでしょうか?

  • Excel関数について。

     ROUNDDOWN関数を使って式を作ったのですが、1:25や5.36とかの  場合は1:00や5とゆうように表示されるのですが、0:15や0.33  の場合はセルが空白になってしまいます。0:15や0.33の時にでも  0:00や0と表示させる方法はありますか?ツール→オプションの  ゼロ値の表示でも出来るのですが、それだと数値のない所まで  ゼロ値が表示されてしまうので、出来れば算式で出来る方法が  あれば教えて下さい。宜しくお願いします。出来れば数値と時刻、  別々の式だと有難いです。

  • Excel2007「入力規則」とCOUNTA関数

    ●質問の主旨 「データの入力規則」を使って1つの列に相対参照の関数式を 入力するためにはどのようにすればよいでしょうか? ご存知の方ご教示よろしく願います。 ●質問の補足 添付の画像をご参照ください。 現在、N5セルに下記の関数式が入力されています。 =IF(J5>M5,M5+1-J5,M5-J5) この関数式をN6以下のセルにも =IF(J6>M6,M6+1-J6,M6-J6) という具合で「入力規則」として計算ができるようにしたいと 考えております。ただしデータベース形式の表を作成しているので N1からN4までのセルは空白のままにしておきます。 「データの入力規則」の「ユーザー定義」とCOUNTA関数を組み合わせれば できそうな感じですが、具体的にどのように組み合わせれば良いのか 思いつきません。

  • エクセルの時刻関係の関数について教えてください。

    エクセルの時刻関係の関数について教えてください。 深夜の1:00を25:00で表示する関数はありますか? 勤怠表をエクセルにて作成したのですが、上記の問題が解決できなくて 正確な残業時間がもとめられません。 現状は、時:分が三つのセルによって区切られており、それぞれ数字を 出社時刻・退社時刻の時・分を入力することで残業時間が自動計上され その月の合計時間がもとめられるように作りました。 上記のように数字を入力した際に、他のセルでTIME関数を使用して 時間を表示させることによって自動計上をしているので、いわゆる 大元な部分になってきます。 そこで、問題になったのが、深夜残業でも24:00以降がTIME関数だと表示されなくて 正確な残業時間がもとめられません。 一応、他の時間に関係する関数を調べたり、しましたが、よく分かりませんでした。 どんな些細なことでも結構ですので、ご回答をよろしくお願い致します。

  • エクセルの関数を教えてください。(時刻の計算)

    例えば、従業員が10人いて、日・週・月ごとに実働時間を集計できるような表を作っています。 A 9:00-17:00 8:00h B 1:00-21:00 8:00h C 3:00-23:00 8:00h : : こんな感じなのですが、実働時間の8時間というのは「退社時刻-出社時刻」で簡単にだせるのですが、ABCの実働時間の合計を普通にSUM関数で出すとシリアル値で計算してしまうので、うまくいきません。 日付・時刻関係の関数をみてみたのですが、どれもうまくいきませんでした。 最終的にはこれに半休が加わったり、食事休憩の時間をマイナスしたり、勤務時間も24時を越えたりするので、少し複雑になってくるのですが、時刻の計算ができないと前に進めません... エクセルはOffice XPを使っています。 よろしくお願いします。

  • IF関数の論理式に時刻を使いたいが・・・

     例えば宅配便の配達希望時間を羅列した表があって、「20:00以降は“夜間配達”」と戻したいとき、IF関数を使用すると思います。  解説書によると、IFの式の条件には時刻の表示形式は使えないので「”」で囲み、「1」をかける。これで時刻表示がシリアル値になるため設定が早くなる。 とあるのですが、これだけでは意味がわからず質問させていただきました。下記の2点ほどご教示いただければ助かります。 (1)どうしてIFのの条件に時刻の表示形式は使えないのか?他の関数には使えるような気がするのですが。 (2)「”」で囲むのはなんとなくわかるとして、なぜ「1」をかけるのか。 シリアル値の知識(時刻の場合24時間を1で管理する)は一応あります。  

  • Excel: 時刻の演算

    初歩的な質問ですみません。 セルの表示形式が「時刻」で、例えば"11:30"のように時刻がセルに入っているとします。これに例えば1時間10分をずつを足して、"11:30"を"12:40"に、"12:40"を"13:50"にするにはどのような関数を使ったらよいでしょうか?

  • Excel2000の時間計算を関数で

    Excel2000でセルに時間(HH:MM形式)が入っています。 表示のみ(HH:MM形式)で、実データは小数点の入った数値です。 このセルは1日から31日まであって、最後に合計を出したいのですが、 表示形式を時刻にすると24時間の壁があることに気づきました。 時間数の合計を出したいので、24時間を超えて計算したいのですが SUM等で足しただけではだなようです。合計時間の上限は72時間と 考えています。 関数の組み方が分かる方がいらっしゃいましたら、ご教示願います。

  • ファイルメーカーの関数(時刻関数)について

    ファイルメーカープロ11を使っていますが、 時刻の関数が分からず困っています。 やりたいことは、 2014/7/7 12:30~2014/7/8 7:15までの時間(つまり18.75H)を出したいのです。 時間の部分だけならhour関数で何とかできましたが、 分の部分は関数の作り方が分かりません。 ちなみに18H45Mではなく、18.75と出したいです。 どなたか教えて下さい。

  • ファイルメーカーの関数(時刻関数)について

    ファイルメーカープロ11を使っていますが、 時刻の関数が分からず困っています。 やりたいことは、 2014/7/7 12:30~2014/7/8 7:15までの時間(つまり18.75H)を出したいのです。 時間の部分だけならhour関数で何とかできましたが、 分の部分は関数の作り方が分かりません。 ちなみに18H45Mではなく、18.75と出したいです。 どなたか教えて下さい。