Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(指定なし : Excel 2003)
時刻「0時00分」を表示させない方法について
投稿日時: 18/11/27 16:10:40
投稿者: オンバンちゃん

以下の表があり、B1には以下のような関数が入っていて、C1のセルには以下の関数が入っており、
B1で抽出した時間をB1に表示させ、C1において、〇〇時〇〇分と表示させるようになっております。
この場合において、A1:A3に何も時間が入力されていない場合に、B1では0:00と表示され、C1では0時00分と表示されるのですが、0時00分を表示させないようにする方法がありましたら、ご教示いただければ幸いです。
お願いいたします。
 
 
   A    B      C
 
1 8:45    =MIN(A1:A3)   =IF(B1<>"",HOUR(B1)&"時"&RIGHT(MINUTE(B1)+100,2)&"分","")
 
2 12:32
 
3 4:24
 

回答
投稿日時: 18/11/27 17:07:47
投稿者: bi

=IF(B1=0,"",TEXT(MIN(A1:A3),"h時mm分"))
B1セルを使わずに直接
=IF(SUM(A1:A3)=0,"",TEXT(MIN(A1:A3),"h時mm分"))
 
でも。

回答
投稿日時: 18/11/27 17:17:06
投稿者: WinArrow
投稿者のウェブサイトに移動

セルB1
=IF(SUM(A1:A3)=0,"",MIN(A1:A3))
 
セルC1
=IF(B1<>"",TEXT(B1,"h時m分"),"")
 
※セルC1は、TEXT関数の方がスマートです。
 
もうう一つの方法
 
セルC1ではなく
セルB1の数式は、
=IF(SUM(A1:A3)=0,"",MIN(A1:A3))
で表示形式を「ユーザー定義」で
h"時"m"分"
と設定することもできます。
 
表示形式を使って、見た目だけ対応したほうが、計算に使用することができます。
 

回答
投稿日時: 18/11/27 17:40:19
投稿者: WinArrow
投稿者のウェブサイトに移動

>=IF(B1<>"",HOUR(B1)&"時"&RIGHT(MINUTE(B1)+100,2)&"分","")
の数式について
 
「時」を取り出すのに、「HOUR関数」を使うのでしたら
「分」を取り出すのは、「MINUTE関数」を使いましょう
この方が統一的です。
 
でも、分だけ2桁にするならば、
TEXT関数で"h時mm分"と指定したほうが
「時」と「分」を一発で指定できます。
どちらにしてもセルC1を計算に使用したい場合、
使用できないわけではないが、面倒です。
 

回答
投稿日時: 18/11/27 18:29:10
投稿者: ブルー

入力の有無を判定するのは、SUMよりCOUNTの方がいいでしょう。
例えばA1セルにだけ0:00と入力されているとすると
SUMの場合、入力なしの扱いになってしまいます。
 
B1: =IF(COUNT(A1:A3),MIN(A1:A3),"")  表示形式をユーザー定義で h"時"mm"分"
 
A1:A3に0:00が入力されることがなければ
 
B1: =MIN(A1:A3)  表示形式をユーザー定義で h"時"mm"分";;
 
それとも結果を文字列にしたいんでしょうか?
 
A1:A3に0:00の入力あり
B1: =IF(COUNT(A1:A3),TEXT(MIN(A1:A3),"h時mm分"),"")
 
なし
B1: =TEXT(MIN(A1:A3),"h時mm分;;")

回答
投稿日時: 18/11/27 19:59:18
投稿者: WinArrow
投稿者のウェブサイトに移動

ブルー さんの引用:
入力の有無を判定するのは、SUMよりCOUNTの方がいいでしょう。
例えばA1セルにだけ0:00と入力されているとすると
SUMの場合、入力なしの扱いになってしまいます。

 
私のところでは、
A1:0:00
A2:空白
A3:空白
 
=COUNT(A1:A3) ⇒ 1
=SUM(A1:A3) ⇒ 0
 
になるけど‥‥どこか間違っているでしょうか?

回答
投稿日時: 18/11/27 20:32:11
投稿者: ブルー

>A1:0:00
>A2:空白
>A3:空白
 
この場合の最小値は0:00ですよね。
 
>=IF(SUM(A1:A3)=0,"",MIN(A1:A3))
 
この式で0:00になりますか?

回答
投稿日時: 18/11/27 21:03:01
投稿者: WinArrow
投稿者のウェブサイトに移動

ブルー さんの引用:
>A1:0:00
>A2:空白
>A3:空白
 
この場合の最小値は0:00ですよね。
 
>=IF(SUM(A1:A3)=0,"",MIN(A1:A3))
 
この式で0:00になりますか?

 
了解しました。
要するに、空白と「0」の区別が必要ということですね・・
 

投稿日時: 18/11/28 09:52:38
投稿者: オンバンちゃん

biさん、WinArrowさん、ブルーさん
 
早期の回答ありがとうございました。
無事解決することができました。
ありがとうございました。