Excelで勤務時間や作業時間を入力したのに、表示が思ったとおりにならず「これで合っているのかな?」と不安になることはありませんか。とくに「合計時間が24時間を超えると、なぜか時間がリセットされたように見える」という現象は、Excelを使い始めた多くの方がつまずくポイントです。
このページでは、時間を「h:mm」(時間:分)の形式で正しく表示する基本手順から、初心者がとても引っかかりやすい24時間を超える時間の表示、そして数式の結果を文字列として扱いたいときに便利なTEXT関数まで、画面を見ながら順番に解決していきます。Excelの内部で時間がどう扱われているか(シリアル値)の仕組みも、最初に一度だけやさしく押さえておきます。
そもそもExcelは時間を「数値」として扱っている
設定の前に、ひとつだけ知っておくと一気に理解が進むことがあります。それは、Excelは日付や時刻を内部的には「数値」として持っているという点です。この数値のことをシリアル値と呼びます。
日付は「1900年1月1日」を「1」として、1日ごとに1ずつ増える整数で表されます。一方、時刻は1日(24時間)を「1」とした小数で表されます。たとえば正午(12:00)は1日のちょうど半分なので「0.5」、午前6時は「0.25」という具合です。
リードとして次の早見表を見てください。同じ「数値」が、表示形式を変えるだけで時刻に見えたり小数に見えたりすることがわかります。
| セルに入っている数値(シリアル値) | 「h:mm」で表示すると | 意味 |
|---|---|---|
| 0.25 | 6:00 | 午前6時 |
| 0.5 | 12:00 | 正午 |
| 0.75 | 18:00 | 午後6時 |
| 1.5 | 12:00(※) | 1日と12時間ぶん。h:mmだと「日」が消える |
時間を「h:mm」形式で表示する手順
まずは基本の表示から設定します。設定の入り口は「セルの書式設定」というダイアログ(設定画面)で、ショートカットキー Ctrl + 1(数字の1)で一発で開けます。リボンのボタンを探すより速いので、覚えておくと便利です。
- 時間を表示したいセルを選びます(複数のセルをまとめて選んでも構いません)。
- キーボードで Ctrl + 1 を押します。「セルの書式設定」ダイアログが開きます。リボンから開く場合は、画面上部の「ホーム」タブ →「数値」グループの右下にある小さな矢印をクリックします。
- 上のタブの中から「表示形式」を選びます。
- 左側の「分類」の一覧から、一番下の「ユーザー定義」を選びます。
- 右側の「種類」と書かれた入力欄に、半角で h:mm と入力します。
- 「OK」ボタンを押します。

これで、選んだセルの時間が「14:30」のように「時間:分」で表示されます。「h:mm」と「hh:mm」の違いは、1桁の時間にゼロを付けるかどうかだけです。「h:mm」は「9:30」、「hh:mm」は「09:30」と表示されます。書類の見た目をそろえたいときは「hh:mm」が便利です。
24時間を超える時間は「[h]:mm」(角括弧)で表示する
勤務時間の1か月合計や、複数日にまたがる作業時間を足し算すると、合計が24時間を超えることがよくあります。ところが普通の「h:mm」のままだと、たとえば本当は「36時間45分」なのに 「12:45」 のように24時間を引いた残りだけが表示されてしまいます。先ほどの早見表で見た「24時間を超えた分が消える」現象です。
これを防ぐ正しい書き方が、時間の部分を角括弧で囲んだ「[h]:mm」です。角括弧で囲むと「24時間ごとにリセットしないで、累計の時間をそのまま表示する」という意味になります。手順は基本とほぼ同じです。
- 合計時間が入っているセル(または合計を表示したいセル)を選びます。
- Ctrl + 1 で「セルの書式設定」を開き、「表示形式」タブ →「ユーザー定義」を選びます。
- 「種類」の欄に、半角で [h]:mm と入力します。角括弧は
[と]です。 - 「OK」を押します。
![セルの書式設定でユーザー定義に [h]:mm と入力した画面](https://m32006400n.xsrv.jp/wp-content/uploads/2026/06/crop_e130903_id2.png)
この設定にすると、合計が24時間を超えても「36:45」のように累計のまま正しく表示されます。分まで含めて累計したい場合は [mm]、秒まで累計したい場合は [ss] のように、累計したい単位を角括弧で囲むのがルールです。たとえば「[mm]:ss」なら何分何秒という形で、60分を超えても分のまま積み上がります。
![同じ時間データを h:mm と [h]:mm で表示した比較](https://m32006400n.xsrv.jp/wp-content/uploads/2026/06/crop_e130903_id3.png)
計算結果を文字列にしたいときはTEXT関数
「合計時間を文章の中に差し込みたい」「別のセルと文字でつなげたい(例:『勤務 36:45』)」というときは、表示形式ではなく TEXT関数 を使うと便利です。TEXT関数は、数値(シリアル値)を指定した書式の文字列に変換する関数です。
書き方は =TEXT(値, "書式") です。時間の累計を文字にしたいなら、次のように書きます。
- 結果を出したいセルを選びます。
- 合計時間がA1に入っているとして、
=TEXT(A1,"[h]:mm")と入力します。 - Enterキーを押します。

こうすると、結果は「36:45」という文字列になります。文字列なので、="今月の勤務は "&TEXT(A1,"[h]:mm") のように、ほかの文章とつなげて1つの文にすることもできます。普通の表示形式(セルの書式設定)が「セルの見た目だけ」を変えるのに対し、TEXT関数は「中身そのものを文字にする」点が違いです。集計や見た目だけで足りるなら表示形式、文章に埋め込みたいならTEXT関数、と使い分けるとよいでしょう。
よくある質問
Q1. 時間の引き算をしたら「#####」と表示されました。なぜですか?
列の幅が足りずに値が表示しきれないときも「#####」になりますが、時間の引き算で出る場合は計算結果がマイナス(負の時間)になっていることが原因のことが多いです。Excelの標準(1900年日付システム)では、マイナスの時刻・日付をそのまま表示できないため「#####」になります。終了時刻から開始時刻を引く順番が逆になっていないかを、まず確認してください。どうしてもマイナスの結果を表示したい場合は、=TEXT(ABS(終了-開始),"h:mm") のように絶対値(ABS関数)で正の数にしてからTEXT関数で文字にする方法があります。
Q2. 「h:mm」と「hh:mm」はどう使い分けますか?
「h:mm」は1桁の時間をそのまま「9:30」と表示し、「hh:mm」は先頭にゼロを付けて「09:30」と表示します。見た目の桁をそろえたい一覧表では「hh:mm」、自然な見え方でよければ「h:mm」がおすすめです。どちらも24時間を超えると分が消えるので、累計を扱うときは角括弧つきの「[h]:mm」を使ってください。
Q3. 設定したのに数字のままで、時刻に変わりません。
セルに入っているのが「14時30分ぶんの時刻データ」ではなく、ただの数値(たとえば「1430」)の場合は、表示形式を時刻にしても正しい時刻にはなりません。時刻として入力するときは 14:30 のようにコロンで区切って入力します。すでに数値で入ってしまっている場合は、入力し直すか、TIME関数などで時刻に変換する必要があります。
まとめ
Excelの時間表示は、内部が「数値(シリアル値)」であることさえ押さえれば、つまずきの大半は解決します。基本の表示は「h:mm」、24時間を超える累計は角括弧つきの「[h]:mm」、文章に埋め込みたいときはTEXT関数、という3つを使い分けてみてください。表示が合わないと感じたときも、多くは計算ではなく「表示形式だけ」の問題です。まずはCtrl+1で書式を見直すところから始めると、落ち着いて対処できます。
(最終確認日:2026年6月)


コメント