大体でIT

-ちょっと使えるネタを紹介-

大体でIT

Excelで、時間の比較をする方法について、ご紹介します。時間を比較するには、数値と同じように、比較演算子を使うとできます。計算した時間を比較する場合は、誤差に注意する必要があります。計算した時間を比較する場合は、TEXT関数とVALUE関数を使って誤差をゼロにして、比較しましょう。

はじめに

この記事では、時間を比較する方法について、ご紹介します。

時間を比較するには、数値の比較と同じように、比較演算子を使うとできます。

時間の比較には、次のような比較の仕方があります。

  • セルに入力された時間を比較
  • 数式に時間を入力して比較
  • TIME関数を使って比較

時間の比較をする際の注意点は、計算した時間は、誤差が出る場合があることです。

計算した時間を比較に使う場合は、「TEXT関数」と「VALUE関数」で、誤差をゼロにしてから、比較をしましょう。

では、時間を比較する方法について、解説していきます。

この記事で紹介すること

  • 時間の比較をする方法

目次から見たい項目へ移動すると便利ですよ。

目次

Excelで時間の比較する

Excelで、時間の比較をする場合は、比較演算子を使います。

比較演算子を使う

比較演算子は、こんなやつですね。

  • <
  • <=
  • >
  • >=
  • =

という感じです。

数値の比較をする場合と同じように、時間を比較することができます。

Excelで時間の比較をしてみる

Excelで、時間の比較をしてみます。

使いそうな3パターンで、ご紹介します。

  • セルに入力された時間を比較
  • 数式に時間を入力して比較
  • TIME関数を使って比較

では、それぞれのパターンで、時間を比較してみます。

セルに入力された時間を比較

セルに入力された時間を比較してみます。

セルに入力された時間は、そのまま比較することができるので、簡単です。

比較演算子「<」を使って、比較してみます。

数式は、こんな感じになります。

=A1<A2

では、セルに入力してみます。

比較演算子「<」で比較

比較演算子「<」を使って、時間を比較した結果

結果は、「TRUE」ですね。

「9:00:00」より「10:00:00」が大きいので、正しく比較できています。

次は、比較演算子「=」を使って、比較してみます。

等しいかどうかを、比較します。

セルに入力する数式は、こんな感じです。

=A1=A2

では、セルに入力してみます。

比較演算子「=」で比較

比較演算子「=」を使って、時間を比較した結果

結果は、「TRUE」となりました。

「9:00:00」と「9:00:00」は、もちろん同じ時間なので、正しく比較できています。

セルに入力された時間を比較する場合は、簡単ですね。

数式に"9:00:00"を入力して比較

次は、数式の中に「"9:00:00"」のように時間を入力して、比較する場合です。

文字列として時間を入力して比較する場合は、「1を掛けて」シリアル値に変換する必要があります。

ちょっとやってみます。

数式の中に「"9:00:00"」を入力して、時間を比較します。

セルに入力する数式は、こんな感じです。

=A1="9:00:00"

では、セルに数式を入力してみます。

時間の文字列を使って比較

数式の中に文字列の時間を入力して時間を比較した結果

結果は、「FALSE」となってしまいました。

数式に文字列を入力して、時間の比較をする場合は、「1を掛けて」シリアル値に変換してあげます。

こんな感じです。

=A1="9:00:00"*1

では、セルに数式を入力してみます。

「1を掛けて」シリアル値に変換

文字列に1を掛けてシリアル値に変換したあと時間を比較する

結果は、「TRUE」となりました。

時間の比較が、正しくできました。

数式の中に文字列の時間を入力して、比較する場合は、「1を掛けて」時間を比較しましょう。

TIME関数を使って比較

「TIME関数」を使って、時間を比較することもできます。

こんな感じで、数式を入力して時間を比較します。

=A1=TIME(9,0,0)

では、セルに入力してみます。

「TIME関数」を使って比較

TIME関数を使って時間を比較した結果

結果は、「TRUE」となりました。

「TIME関数」は、24時間未満までの比較には使えます。

「TIME関数」だと、24時間以上の時間は、切り捨てられちゃうからですね。

24時間以上の時間を比較したい場合は、「セルに入力する」か、「文字列を入力する」方法を使いましょう。

注意:時間の計算をすると誤差がでる

比較する際の注意点は、計算をして出した時間には、誤差が出ちゃう場合があるという点です。

足し算や引き算などの計算をすると、小数点のどこかで四捨五入されてしまいます。

かなり細かい小数点まで、計算していますけど、微妙に誤差が出ちゃうんですね。

時間の計算で、誤差を出さないようにするには、「TEXT関数」と「VALUE関数」を使います。

ちょっとやってみます。

「計算した時間」と「手入力した時間」で誤差

「2021/5/1 12:00」から「2021/5/1 10:00」を引いた時間と、手入力した時間を比較してみます。

数式は、こんな感じです。

=A2-A1
=A4=A6

では、セルに入力してみます。

引き算した時間を比較

引き算した時間と手入力した時間を比較

結果は、「FALSE」となりました。

なぜじゃー。となります。

細かい小数点まで、表示してみるとわかります。

引き算した時間に誤差が出る

引き算の結果を細かい小数点まで表示する

引き算した方の時間に、微妙ですけど、誤差が出てますよね。

これが、「FALSE」になった原因です。

TEXT関数とVALUE関数を使うと、誤差をゼロにすることができます。

「TEXT関数」と「VALUE関数」を使う

TEXT関数とVALUE関数を使って、引き算の結果を手入力した場合と、同じ値にしてみます。

セルに入力する数式は、こんな感じになります。

=A2-A1
=TEXT(A4,"h:mm:ss")
=VALUE(A6)

引き算の結果を、一旦、文字列の時間に変換して、再度、シリアル値に変換しています。

TEXTとVALUEで誤差をなくす

TEXT関数とVALUE関数で引き算した結果から誤差をなくした結果

結果は、「2:00:00」となります。

もちろん時間の表示でみたときは、同じ結果です。

TEXT関数とVALUE関数をまとめると、こんな感じになります。

=VALUE(TEXT(A2-A1,"h:mm:ss"))

では、セルに入力してみます。

TEXTとVALUEをまとめる

TEXT関数とVALUE関数をまとめて変換した結果

結果は、同じく「2:00:00」です。

では、手入力した時間と比較してみます。

比較する数式は、こんな感じです。

=A4=A6

では、時間を比較してみます。

引き算した時間を比較

TEXT関数とVALUE関数で変換した時間と手入力した時間を比較した結果

結果は、めでたく「TRUE」となりました。

TEXT関数とVALUE関数で、時間の変換をすると、手入力した時間と、うまく比較することができます。

おわりに

この記事では、時間を比較する方法について、ご紹介しました。

時間を比較するには、数値の比較と同じように、比較演算子を使うとできます。

時間の比較には、次のような比較の仕方がありました。

  • セルに入力された時間を比較
  • 数式に時間を入力して比較
  • TIME関数を使って比較

時間の比較をする際の注意点は、計算した時間は、誤差が出る場合があることです。

計算した時間を比較に使う場合は、「TEXT関数」と「VALUE関数」で、誤差をゼロにしてから、比較をしましょう。

参考になればと思います。最後までご覧くださいまして、ありがとうございました。

関連する記事から探す

カテゴリから探す

カテゴリから見たい項目を探すと便利ですよ。

アーカイブから探す