• ベストアンサー

EXCELでの時間計算について教えてください。

EXCELでの時間計算について教えてください。 現在時刻が PM15:10だとして、 セルA1に =Now() セルB1に ="15:00:00" セルC1に =A1-B1 と入力すると、 セルC1には期待通りの"0:10:27"(A1とB1の時間差が10分)という結果が返ってきます。 それでセルD1に、差が10分以上であれば"○"を付けたいのですが、どのように式を書けばよいのでしょうか? よろしくお願いします。

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

  • ベストアンサー
noname#204879
noname#204879
回答No.5

[No.3回答に対するお礼]に対するコメント、 》 色々な方法があるんですね! 貴方が思ってるのとチト違うかも。 計算されるもの(された結果)が整数の場合は =IF(C1-"0:10">=0,"○","") とか =IF(C1>="0:10"*1,"○","") でも問題ないのです。でも時間や時刻の計算は小数点を含むものになるので、“遠いところ”で端数処理をしておかないと駄目な場合があります。ROUND を噛ませたのは安全対策なのです。 例えば、セル A1 に 15:00:00 と入力、セル B1 に ="15:00:00" と入力した場合、式 =A1-B1 は通常は 0 を表示しますよね。だから等しいと思うでしょ?ところがギッチョン、式 =A1=B1 は何を返して来ますか?等しいなら TRUE のはずですよね?式 =A1>B1 とか =A1<B1 も試してみてぇ~ ちなみに、私は WinXP Pro SP-2 環境下の Excel 2002 で試しました。 =ROUND(value,10) の「10」が「遠いところ」ですが、もっと“遠く”「11」とか「12」にした方が良いかも?でも、馬鹿の一つ覚えみたいに遠けりゃ良いってものではありませぬ。「15」とか「20」は多分駄目です。

その他の回答 (4)

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.4

NOW()関数は計算時の日時+時刻を表示する関数ですので、時刻のみを取り出すなら A1=MOD(NOW(),1) B1="15:0:0" C1=ABS(A1-B1) D1=IF(C1<"0:10","","○") ※数式なので再計算しなければ10分立っても表示は変わりません。 タイマーのようにしたいのなら、別の工夫が必要でしょう。

tessyu
質問者

お礼

ご回答ありがとうございます、早速試してみます! タイマーは擬似的に↓で処理しています。 Worksheets("Sheet1").Range("A1") = Now + TimeValue("00:00:01") Application.OnTime Worksheets("Sheet1").Range("A1"), "main"

noname#204879
noname#204879
回答No.3

=IF(ROUND(C1-"0:10",10)>=0,"○","")

tessyu
質問者

お礼

ご回答ありがとうございます、早速試してみます! 色々な方法があるんですね!

回答No.2

ごめん、訂正です。数値化の呪文を忘れてました =if(C1>="0:10"*1,"○","")

tessyu
質問者

お礼

ご回答ありがとうございます、早速試してみます!

回答No.1

=if(C1>="0:10","○","") 10分未満の場合はなにも表示していません。

tessyu
質問者

お礼

とりあえず、 38813.00347(5分差)より小さいかどうかで判断することにしました。 もっとスマートな方法がありましたらお教えください。 よろしくお願いします。

tessyu
質問者

補足

教えて頂いた方法を試してみましたが、 時間差が10分未満であっても10分以上であっても、セルD1には何も表示されませんでした。 なにか記述に問題があるのでしょうか…?

関連するQ&A

  • EXCELで時間の計算

    EXCELで時間の計算をしたいのです。(和) A1→15  B1→30  C1→22  D1→00 A2→16  B2→30  C2→21  D2→00 A3→ 5  B3→00  C3→12  D3→30 と入力してあります。 A1とB1でひとつの時刻です。 つまり1行目は15:30と22:00です。 まずは後ろの時刻から前の時刻を差し引いたもの つまり1行目でいうところの22:00から15:30を引いたものの結果6時間30分を E1→6 F1→30とするにはどうしたらよいですか? またその合計 1行目→6時間30分 2行目→4時間30分 3行目→7時間30分を足したもの18時間30分を E4→18 F4→30とするにはどうしたらよいですか? そもそも時と分を分けたところに失敗があるのですが それはもうどうしようもありません。 それでは不可能なんでしょうか? E1、F1に入れる式、 E4、F4に入れる式を教えてください。 よろしくお願いいたします。

  • EXCELの時間計算

    セルA1に、「9:43:20」と時刻が入力されています。 セルB1に、「3.2」と時間(分)が入力されています。 セルC3には、A1の時刻から,B1の時間が経過した後の時刻を 表示させたいです。 ※B1の「3.2」を3.2分(3分12秒)として計算したいです。 C3の計算式を教えてください。 ※計算した結果の時刻は,9:46:32です

  •  エクセルでの経過時間の分計算。

     エクセルでの経過時間の分計算。  よろしくお願いします。セル内に”0900”と入力すれば、”=NOW()”関数式で表示されている現在時間からの経過した分を表示できないか考えています。何か良い方法が分かる方がいれば、よろしくお願いします。 例)      A        B        C 1  10:05:39    0900        65 2 3 A1"=NOW()" B1"0900と入力" C1"経過分時間65を表示"

  • Excelでの時間計算

    Excelでタイムシートを作成することになりました。    A       B       C       D      1  入社時刻  退社時刻  休み時間  在席時間 で、用紙の下に何時間何分か表示されるという感じで作りたいと思います。 この際、『D』に関数を入れて自動で計算したいのですが、 どのような式を入れたらよいでしょうか? 又、『A』には9:00と入れても計算できるのでしょうか? 5分刻みで入力したいので、どのようにすればよいかアドバイスお願いします。       

  • エクセルで時間計算

    エクセルで時間計算をしているのですが A1セルに開始時刻  B1セルに終了時刻  C1セルは作業時間   9:00         4:00           7:00 このような表を作っています 「C1」には(B1+12:00)マイナス「A1」と数式があるのですが 「B1」に入る時刻が午後でなく午前11:00だと 「C1」の数式のままでは (11:00+12:00)- 9:00 で 14:00 となってしまいます 「B1」には24時間形式で午後4:00を16:00と入力すればよいのですが 24時間形式を使わず9:00マイナス4:00を正しく計算するには どのような数式にすればよいのでしょうか IF文を使うのかなとも思うのですが 見当がつきません。宜しくお願いいたします。

  • Excelの時間計算について

    日付と時間が入力されたセルがあるのですが、 そのセル内容を合体させて別のセルに表示しようと思っています。 例)A1に日付「2009/07/11」、B1に時間「15:00」と入力されていた   場合に C1に「2009/07/11 15:00」を表示させ、実時間として   認識させたい。D1に表示された現在の時刻「=NOW()」からの   経過時間をE1に表示させるのが目的。 表示だけでしたらC1に 「=TEXT(A1,"yyyy/mm/dd")&" "&TEXT(B1,"hh:mm")」 と入力すれば解決するのですが、 時間として認識させるにはどのようにすればよいでしょうか? 因みにB1のセルの時刻は書式設定を「yyyy/mm/dd hh:mm」として 表示させると「1900/01/00 15:00」となります。 D1に表示された現在の時間「=NOW()」からどれだけ時間が 経過しているかを計算させ、E1に表示するのが最終目的です。 どなたかお知恵を貸していただけませんでしょうか? よろしくお願いします。

  • Excelの時間計算

    Excelの時間計算の式を教えてください。 Aのセルに13:00、Bのセルに15:30という時間が入っている場合、隣のCのセルに2.5時間と表示させるようにしたいのですが。 普通にB-Aでやるとうまくいきません。 セルが時間のシリアル値になっているからでしょうか。よろしくお願いいたします。

  • エクセルで時間差の計算

    日数間の計算結果を「hh:mm」形式で表示させたいのですが。 ------------------------------- セルA1 2003/10/01 10:00 セルB1 2003/10/02 11:30 セルC1 25:30 ------------------------------- 上記のようにA1とB1の時間差を「時:分」形式でC1に結果を表示させたいのですが24時間以上の差があると出来ません。 TEXT(B1-A1,"d:hh:mm")なら出来るのですが日にちを使いたくないのです。 よろしくお願いします。

  • Excelで 時間計算するには?

    ExcelのA列に、たとえば、時刻「AM8:50」と入力して、入力されたAに、任意の時間(2時間後、とか30分 後)の時間を計算して、B列に表記するには、どうすればいいですか? もちろん表記も「AM、あるいはPM」です。

  • エクセルで時間の引き算をするには

    お世話になっております。 エクセルでの時間の計算について教えてください。 開始日と終了日と開始時刻と終了時刻が4つのセルに分かれています。それらを使って勤務時間をだしたいのですが、どうしたらいいのでしょうか。 開始日=セルA、終了日=セルB、開始時刻=セルC、終了時刻=セルDとします。これらを使って勤務時間を計算し、時給=セルEを掛け合わせ給料をセルFに出したいのですが、どうやってエクセルにセルAとセルCを2つ認識させ、その上セルBとセルDを引いて勤務時間をだせばいいのでしょうか? (問題のエクセルです↓) セルA セルB セルC  セルD   セルE  セルF 7-Feb-07 7-Feb-07 0:03:12 8:00:00 $22.40 5-Feb-07 6-Feb-07 15:45:47 13:38:43 $9.79 7-Feb-07 9-Feb-07 8:33:46 23:26:24 $17.45 8-Feb-07 8-Feb-07 8:10:30 23:59:51 $21.99 7-Feb-07 8-Feb-07 20:30:23 21:02:25 $14.75 7-Feb-07 9-Feb-07 18:39:50 21:20:00 $13.45 6-Feb-07 6-Feb-07 1:03:42 20:58:34 $21.99 どうぞよろしくお願いいたします。

専門家に質問してみよう