大体でIT
大体でIT
Excelで、文字列の時間とシリアル値の変換について、ご紹介します。文字列の時間をシリアル値に変換するには、「VALUE関数」を使います。反対に、シリアル値を文字列の時間に変換するに際に使うのは、「TEXT関数」です。便利な関数ですので、具体的に解説していきます。
この記事では、文字列の時間とシリアル値との変換について、ご紹介します。
文字列の時間を、シリアル値に変換するには、「VALUE関数」を使います。
反対に、シリアル値を、文字列の時間に変換する際に使うのは、「TEXT関数」です。
TEXT関数とVALUE関数をちょっと応用して、時間の誤差をゼロにすることもできます。
では、文字列の時間とシリアル値との変換について、解説していきます。
- 「文字列の時間」を「シリアル値」に変換
- 「シリアル値」を「文字列の時間」に変換
Excelで、文字列の時間を、シリアル値に変換する方法です。
シリアル値に変換するには、「VALUE関数」を使います。
セルに「"17:01:02"」の文字列の時間を入力しておきます。
文字列をシリアル値に変換するVBAコードは、こんな感じです。
シリアル値に変換
ただ、これだと意味が分からないので、時間の表記に変更します。
先ほどシリアル値に変換した値で、表示形式を「h:mm:ss」の時刻表記に変更します。
表示形式を時間表記に変更
時間表記となる
セルに入力した「17:01:02」と一致するかを確認します。
シリアル値となっている
「VALUE関数」を使って、正しく、シリアル値に変換できています。
先ほどとは反対に、シリアル値を文字列の時間に変換する方法を、ご紹介します。
TEXT関数を使って、シリアル値を、文字列の時間に変換するには、次のように入力します。
表示形式のところには、時間の場合は、「"h:mm:ss"」のように入力します。
時間「17:01:02」をセルに入力しておいて、文字列の時間に変換してみます。
文字列の時間に変換
左に寄っているので、「文字列」に変換されています。
時間「17:01:02」と一致するかを確認してみます。
文字列の時間となっている
こんな感じで、TEXT関数を使うと、文字列の時間に変換することができます。
ちょっと応用で、TEXT関数とVALUE関数を使って、「日付+時間」から「時間のみ」を取り出してみます。
INT関数でもできますけども、誤差が発生してしまいます。
誤差をなくして、時間のみを取り出すのに、TEXT関数とVALUE関数の組み合わせが使えます。
「INT関数」を使って、「日付+時間」から「時間のみ」を取り出してみます。
INT関数で「時間のみ」を抽出
結果は、「17:00:00」のみを取り出せました。
セルに入力した「17:00:00」と比較してみます。
誤差が出る
原因は、時間を取り出す際に計算したことで、誤差が出たという結果です。
時間を計算してしまうと誤差が出てしまう場合があるんですね。
こんな場合にTEXT関数とVALUE関数が使えます。
TEXT関数で「時間のみ」を抽出
次は、VALUE関数を使って、文字列の時間を、時間に変換します。
先ほど取り出した文字列の時間を、VALUE関数で、シリアル値に変換します。
VALUE関数でシリアル値に変換
結果は、「0.708333333」と、シリアル値に変換できました。
先ほど変換したシリアル値を、時間表記に変更します。
時間表記に変更
TEXT関数とVALUE関数をまとめると、こんな感じです。
=VALUE(TEXT(A1,"h:mm:ss"))
TEXT関数とVALUE関数をまとめる
セルに入力した時間「17:00:00」と一致するかを確認してみます。
誤差がなくなる
こんな感じで、TEXT関数とVALUE関数を組み合わせると、時間の誤差をゼロにすることができます。
この記事では、文字列の時間とシリアル値との変換について、ご紹介しました。
文字列の時間を、シリアル値に変換するには、「VALUE関数」を使います。
反対に、シリアル値を、文字列の時間に変換する際に使うのは、「TEXT関数」です。
TEXT関数とVALUE関数をちょっと応用して、時間の誤差をゼロにすることもできます。
参考になればと思います。最後までご覧くださいまして、ありがとうございました。