Excelについて質問です。利用時間によって料金が変わるサービスの料金表をExcelで作成したいです。

Excel65閲覧

ベストアンサー

0
画像

ThanksImg質問者からのお礼コメント

参考になりました。ありがとうございます。

お礼日時:5/23 14:17

その他の回答(2件)

1

添付参照 D3に =IF(COUNT(B3:C3)=2,MIN(MIN("21:00",C3)-MAX("9:00",B3),"8:00"),"") =IF(COUNT(B3:C3)=2 これは B:C列が 空白の場合は 空白に「するためです 次の MIN(MIN("21:00",C3) で 終了時間を だす関数になります。 D列は 基本時間内で 経過時間をだすために 21:00と 実際のC3の時間と 比較し C3が 21:00より前なら C3, "21:00"より後なら ”21:00”を 終了時間とします。 その次の MAX("9:00",B3)は 今度は 9:00と開始時刻を くらべて 9時以降を 開始時刻とさせるためのものです これで 計算すべき 開始時刻と終了時刻が でたので 終了から開始をひけば 基本時間内の時間が でます。 が 8時間を 超える場合は 延長になります そこで MAXが ”8:00” ですから MIN(MIN("21:00",C3)-MAX("9:00",B3),"8:00") 8:00と比べて小さい方をとれば 最大で 8:00と いう時間が 求められます。 次に E3の 基本時間内の延長時間は =IF(COUNT(B3:C3)=2,MAX(0,MIN("21:00",C3)-MAX("9:00",B3)-"8:00"),"") MIN("21:00",C3)-MAX("9:00",B3)-"8:00")で 基本時間内から 8:00を 引いたものが 延長時間です しかし 延長時間が 8時間を 超えない場合に 8:00を 引くとマイナスに なるので MAX(0,MIN("21:00",C3)-MAX("9:00",B3)-"8:00"),"") MIN("21:00",C3)-MAX("9:00",B3)-"8:00") と 0と比較して おおきい方を とります つまり マイナスの場合は 0です。 次に 営業時間外延長時間ですが =IF(COUNT(B3:C3)=2,MAX(0,("9:00"-B3))+MAX(0,(C3-"21:00")),"") MAX(0,("9:00"-B3)) で 8時以前の 時間を出します MAX(0,(C3-"21:00")で 21:00以降の時間を 延長時間として だします これをたせば 営業時間外延長時間 です。

画像

1人がナイス!しています

1

こんな感じでどうですか?セルは画像参照。 【A3:B3】は「表示形式:ユーザー定義→[h]:mm」 【C3:E3】は「表示形式:時刻→13:30」 【C3】は「=IF(B3>A3,B3-A3,0)」 【D3】は「=IF(C3>TIME(8,0,0),C3-TIME(8,0,0),0)」 【E3】は「=IF(A3<TIME(9,0,0),TIME(9,0,0)-A3,0)+IF(B3>TIME(21,0,0),B3-TIME(21,0,0),0)」

画像

1人がナイス!しています