こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセルでの時間表示書式

エクセルで時間を表示したいのですが、1時間以上のときは「1時間5分」、1時間未満のときは「33分」のようにするにはどうしたらよいでしょうか。

投稿日時 - 2006-06-11 18:45:35

QNo.2209418

すぐに回答ほしいです

質問者が選んだベストアンサー

No.1です。

A1に時間が入っているとして、

B1に
=INT(A1/"0:01")

C1に
=IF(INT(B1/60),INT(B1/60)&"時間","")&IF(MOD(B1,60),MOD(B1,60)&"分","")

としてみて下さい。
(B1への記述は無くして、C1の中の「B1」をすべて「INT(A1/"0:01")」にしてもOKです)

詳しい人ならもっと洗練された書き方をするのかもしれませんが、
私にはこれが限界です(^^;;

投稿日時 - 2006-06-11 21:20:31

お礼

ありがとうございます!!!!
やはり書式でインスタントに、と言うわけにはいかないようですね。

追伸:「=INT(A1/"0:01")」 "0:01"で割ると言うワザを覚えました!!!

投稿日時 - 2006-06-11 21:25:31

ANo.3

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

="0:33"+"0:32"*(ROUND(A1-"1:0",10)>=0)

投稿日時 - 2006-06-11 20:19:47

補足

質問の仕方がまずかったようです、ごめんなさい。

エクセルで時間を表示したいのですが、あるセルの値がたとえば1時間23分の時は「1時間23分」と、1時間の時は「1時間」と、59分の時は「0時間59分」ではなく、「59分」と、表示されるようにするにはどうしたらよいでしょうか。
あくまでも表示形式の問題です。条件付き書式でセルに色を付けるような感じでセルの書式を変えたいのですが・・・

投稿日時 - 2006-06-11 21:20:50

ANo.1

書式設定で、ということでしたらおそらく無理です。
なので関数を用いて他のセルに表示させることになると思いますが、
元になるデータによって記述する関数が変わります。

元のデータはどのようになっていますか?
65とか33のように「分」で数値になっていますか?
それとも1:05のようになっていますか?

また、1:05となっているのであれば、
それは表示が1:05なだけで実際のデータは1:05:00ですか?
それとも文字列で1:05になっていますか?
(そのセルを選択したときに上の方に表示されるのが
1:05:00なのか、1:05なのか、ということです)

投稿日時 - 2006-06-11 19:36:35

補足

はい、「1:05:00」の時刻形式(?)です。文字列ではありません。
より正確には「=A1-B1」のような感じで時刻の差で時間を求めています。

おそらく無理、というヒントをもらったので関数で考えてみましたがどうしてもわかりません。VBAを使ってガリガリと書けばできそうですが・・・・

よろしくお願いします。

投稿日時 - 2006-06-11 20:12:07

あなたにオススメの質問