dポイントプレゼントキャンペーン実施中!

エクセルでの時刻表示を「時分秒」にし、且つ「0時」「0分」は表示せず、また「0分38秒」は「38秒」と表示したい。

エクセル2010を使用しています。

   A     B      C
  終了    開始    経過時間
1 17:38:25  17:37:47  0:00:38
2 10:21:01  10:13:55  0:07:06

このように、終了時間から開始時間を引き、経過時間を出す表を使っていますが、経過時間の表示を
C1 38秒
C2 7分6秒
としたいと考えています。

時間は全てシリアル値で、現在の書式設定は「時刻」の「13:30:55」です。
これをユーザー設定で「m"分"s"秒"」にすると
0分38秒
7分6秒
となりますが、0分の場合は表示したくありません。
ただし、0秒は表示したいと考えています。

色々なワードで検索しましたが、解決策を見付けることが出来ませんでした。
経過時間を私が望む表示にする方法があるのかどうか分かりませんが、何か方法をご存じの方がいらっしゃれば、ご教示願います。

A 回答 (2件)

C1に表示された結果を用いてD1に表示させる式を書きますね。


1行目がタイトル行であれば2行目から使ってください。
Cを省略したければDの式のCを参照している部分にCの内容を代入してください。

D1=IF(HOUR(C1)=0,"",C1&"時間")&IF(MINUTE(C1)=0,"",C1&"分")&IF(SECOND(C1)=0,"",C1&"秒")
(1時間以上になることがないのであれば最初の部分は不要ですが)
これにより、時間部分が0でない場合のみ「○時間」、分部分が0でない場合のみ「○分」、秒部分が0でない場合のみ「○秒」と表示されます。
01:01:01であれば1時間1分1秒
00:01:00であれば1分
00:00:01であれば1秒
00:00:00であれば空白
と言った具合で、0でない部分のみが表示されるわけです。
    • good
    • 0
この回答へのお礼

早速のご回答、ありがとうございました。最初は上手く出来ず「?」となりましたが、3つの「C1&」の前にそれぞれの時刻関数を加えると、望んだ通りの表示になりました。本当にありがとうございました。

お礼日時:2017/03/17 11:08

条件付き書式を使えば出来ると思いますが「12:00:34」とか「12:34:00」はどう表示するのですか?

    • good
    • 1
この回答へのお礼

早速のご回答うありがとうございました。「12時間34秒」「12時間34分0秒」にしたいと考えていますが、yuji3690様のご回答を元に関数を組み、考えていた表示になりました。
条件付き書式でも良いんですか?それは視野にありませんでした。

お礼日時:2017/03/17 11:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!