時間を小数点表記にしたい 1時間30分 → 1.5時間 | EXCELトピックス

スポンサーリンク
スポンサーリンク

「1時間30分」を小数点形式に変換するには?

Excelで「1時間30分」のように文字列形式で記載された時間を、1.5時間のように小数点形式に変換する方法を解説します。この記事では、数式を使って文字列を分解し、計算する方法を紹介します。

例:文字列の時間を小数点形式に変換

A列に「1時間30分」のような文字列が入力されている場合、B列に小数点形式で表示する方法を示します。

A B
1 時間 時間(小数点表記)
2 1時間30分 =LEFT(A2,FIND(“時間”,A2)-1) + MID(A2,FIND(“時間”,A2)+2,FIND(“分”,A2)-FIND(“時間”,A2)-2)/60
3 2時間15分 =LEFT(A3,FIND(“時間”,A3)-1) + MID(A3,FIND(“時間”,A3)+2,FIND(“分”,A3)-FIND(“時間”,A3)-2)/60
4 3時間45分 =LEFT(A4,FIND(“時間”,A4)-1) + MID(A4,FIND(“時間”,A4)+2,FIND(“分”,A4)-FIND(“時間”,A4)-2)/60

数式の解説

  • LEFT(A2,FIND(“時間”,A2)-1): 「時間」という文字の前の部分を取り出し、時間部分を取得します(例:1)。
  • MID(A2,FIND(“時間”,A2)+2,FIND(“分”,A2)-FIND(“時間”,A2)-2): 「時間」と「分」の間の部分を取り出し、分部分を取得します(例:30)。
  • /60: 分を60で割り、小数点形式に変換します。
  • +: 時間部分と分部分を足し、最終的な小数点形式の時間を計算します。

結果

以下のように、「1時間30分」などの文字列が小数点形式で表示されます。

A B
1 時間 時間(小数点表記)
2 1時間30分 1.5
3 2時間15分 2.25
4 3時間45分 3.75

例:時間データを小数点形式に変換

A列に時間データを入力し、B列にその時間を小数点形式で表示する数式を設定します。

A B
1 時間 (hh:mm) 時間 (小数点表記)
2 1:30 =A2*24
3 2:45 =A3*24
4 3:15 =A4*24

数式の解説

  • A2 * 24: Excelでは時間が内部的に「1日=1」として計算されています。そのため、1時間は1/24に相当します。時間データを24倍することで、時間を小数点形式に変換できます。
  • 表示形式の設定: 計算結果を小数点第2位まで表示するには、対象セルの「セルの書式設定」で「数値」に変更し、小数点以下を2桁に設定します。

結果

以下のように、時間データを小数点形式に変換して表示できます。

A B
1 時間 (hh:mm) 時間 (小数点表記)
2 1:30 1.50
3 2:45 2.75
4 3:15 3.25

まとめ

Excelでは、文字列形式の「1時間30分」などのデータを数式を用いて簡単に小数点形式に変換できます。この方法を活用すれば、手作業を減らし、効率的にデータを扱うことができます。時間データの場合は、そのまま24倍すればよいです。

使用した関数について

FIND関数で指定した文字の位置を求める方法と2つ目の文字位置や右からの位置の求め方についてわかりやすく解説
FIND関数とFINDB関数についてFINDとFINDBの概要セル内の指定した文字の位置を求めるExcel関数=FIND( 位置を知りたい文字列 , 対象 , 開始位置 )=FINDB( 位置を知りたい文字列 , 対象 , 開始位置 )概要 指定した文字列の位置を求める 開始位置は検索のスタート地点、2文字目からとする...
LEFT関数で指定した数の文字列を先頭から取得する方法と日付処理やRIGHTと組合せ方法についてわかりやすく解説
LEFT関数とLEFTB関数についてLEFTとLEFTBの概要文字列を先頭から取り出すExcel関数=LEFT( 文字列 , 文字数 )=LEFTB( 文字列 , 文字数 )概要 指定した文字数分の文字を先頭(左側)から取り出す 文字列の先頭から、文字数分の位置までの文字列を取り出す 末尾から取り出す関数はRIGHTで...
MID関数で文字列の取り出す方法と右から取り出す方法や応用テクニックをわかりやすく解説
MID関数とMIDB関数についてMIDとMIDBの概要指定位置から文字列を取り出すExcel関数=MID( 文字列 , 開始位置 , 文字数 )=MIDB( 文字列 , 開始位置 , 文字数 )概要 開始位置から指定した文字数分、文字列を取り出す 指定した文字以降の文字を取り出すには、指定した文字の位置をSEARCHで...