この記事では、
・エクセルで24時間以上の時間を表示させる方法
・時間の値が「0」の場合に表示させない方法
について解説します。
時間が「1900/1/0」と表示される理由
時間が「1900/1/0」と表示される理由は、エクセルがそのセルの値を時間ではなく日付として認識しているためです。
エクセルでは日付や時間を数値で「シリアル値」という数字で管理しており、
・日付:1900 /1/1起点とした日数
・時刻:24時間を「1」とした小数点
で管理されています。
例えば「2024年1月1日12:00」のシリアル値は、
日付:45292
時刻:0.5
となり、「45292.5」となります。
また、「12:00」というように時間だけを入力した場合のシリアル値は日付の入力がないため、
日付:0
時刻:0.5
となり、「0.5」となります。
日付が0ということは、「1900/1/1」-1=「1900/1/0」となってしまうわけです。
時間が「1900/1/0」と表示された時の対処法
対処法として、表示の設定を日付から時間に変更する必要があります。
対処方法
対象セルを選択します。
右クリックして「セルの書式設定」を選択します。
「表示形式」タブで「時刻」を選択します。
任意の表示形式を選択し「OK」を押します。
この設定により、時間のみが表示され日付が表示されなくなります。
エクセルで24時間以上の時間が表示されない理由
時間の累積を表したい場合、24時間以上の時間が表示されない場合があります。
例えば、「12:00+12:00=24:00」という計算を例にして考えてみましょう。
先述のように時間だけの入力の場合は日付が「1900/1/0」となるわけなので、
12:00は内部的には「1900/1/0 12:00」です。
ここに12時間をプラスするわけなので日付が1日進み「1900/1/1 0:00」となるため、時間の表示だけだと「0:00」となってしまいます。
エクセルで24時間以上の時間を表示させる方法
対処法として、表示の設定を累積に変更する必要があります。
対処方法
対象セルを選択します。
右クリックして「セルの書式設定」を選択します。
「表示形式」タブで「ユーザー定義」を選択します。
【 [h]:mm 】と入力し「OK」を押します。
これにより24時間以上の時間も表示できるようになります。
時間の値が0の場合に表示させない方法
例えば残業時間の管理票を作成する場合、残業が0時間の人は「0:00」と表示されてしまいます。
時間が「0」の場合を非表示にする方法を3パターンご紹介します。
方法1:関数で0の場合に非表示にする
時間を表示させたいセルに次のようなIF関数を入力します。
【 =IF(対象セル=0, “”, TEXT(対象セル, “h:mm”)) 】
※24時間以上を表示させる場合
【 =IF(対象セル=0, “”, TEXT(対象セル, “h:mm”)) 】
※画像の場合、対象セルはE2,E3,E4
これで、対象セルが0の場合は時間が表示されないようになります。
方法2:条件付き書式で0の場合に見えなくする
対象セルを選択します。
「ホーム」タブの「条件付き書式」→「新しいルール」を選択します。
「次の数式を満たす場合に書式設定を行う」を選択し以下の数式を入力します。
【 =対象範囲の一番左上セル=0 】
※画像の場合、対象範囲の一番左上セルはE2
「書式」→「フォント」タブで白を選択し「OK」を押します。
これで、セルの値が0の場合に文字色が背景色と同じになるため、見かけ上表示がなくなります。
方法3:セルの設定書式で0のときに表示させない
対象セルを選択します。
右クリックして「セルの書式設定」を選択します。
「表示形式」タブで「ユーザー定義」を選択します。
【 [=0]””;h:mm 】と入力し「OK」を押します。
※24時間以上を表示させる場合
【 [=0]””;[h]:mm 】
これで、対象セルが0の場合は時間が表示されないようになります。
まとめ エクセルで時間の1900/1/1や0を表示しない(24時間以上や表示形式など)方法
この記事では、エクセルで時間の1900/1/1や0を表示しない(24時間以上や表示形式など)方法についてご紹介しました。
これらの方法を活用して、日々の業務に役立てていきましょう。
コメント