運び屋本舗

軽貨物の日常を書いています。

久々の休み

本日4月16日は約一か月ぶりに丸一日の休みとなりました。

 

休みはとてもありがたいものですね。

 

こんにちは。

運び屋本舗でございます。

 

今日は一日の休みでしたが、では何をしていたのか。

 

私は、エクセルで稼働状況を荷主ごとに運賃を計算しているのですが、中でも八百屋の運賃計算がそれなりに細かいのです。

 

条件は

  • 一日あたり11500円
  • 15分オーバーごとに450円が加算
  • オーバーした時間を日ごとに計上
  • それらの合計を計上

 

という仕様です。

 

以前もこれの計算を自動化というか、終了時間を入れると

 

  • 残業時間      (12:00以降の時間の15分単位)
  • 残業時間分の売り上げ (残業時間内15分単位×450円)
  • 基本運賃と残業分の売り上げの合算(基本運賃11500円+残業時間分の売り上げ)

 

を、表示できるようにしようとしたのですが、なかなかうまくいきませんでした。

 

でも、入力用のフォームと印刷用のフォームを分けることで解決しましたね。

 

同じセルに複数の式を入れることが出来ませんので、入力用のフォームで一回目の計算をして、次の計算結果を印刷用のフォームに反映させればいいことに気付きました。

 

そうしたら、簡単に解決できました。

 

なーんだ。

 

例えば、私の場合は6時~12時までの6時間契約。

 

基本運賃は11500円です。

 

12時以降のオーバー分に対して15分ごと450円が加算されます。

 

エクセル上でやること

まず、残業時間の算出です。例えば終了時間が12時33分だとしたら、残業時間は33分です。

 

しかし、15分ごとの加算なので、残業時間は30分で900円の加算となります。

 

これはFloor関数で計算できます。

 

次に、30分の中に15分がいくつあるのかを計算。

 

これも、30分÷15分で結果は2となり、30分の中に15分は2つあることになります。

 

ただし、日によっては終了時間が11時50分とか、12時に満たない日もあるのでそういう日はマイナスになります。

 

そういう時はif構文で0を代入。

 

次に得られた2という結果に対し、450円を掛けたものを基本運賃11500円に足し、その日の売り上げに結果を表示させる。

 

12時に満たなかった日は、0×450円となり、結果は0円です。

 

残業してないからね。

 

簡単に書くとこんな処理になりますね。

 

これで、終了時間12時33分を入力すると、印刷用のフォームに12400円、残業時間は30分が表示されるようになりました。

 

今までは、残業時間も見れば何分なのか分かりますので、電卓で計算していましたが、月末に一気にやるので結構面倒なのです。

 

毎日やればいいのですが、私は几帳面ではありません。

 

なので、エクセルの自動計算は非常に便利なのです。

 

前職のタンクローリーの会社にいたときの先輩ですが、数字を各セルに入力後、結果も自分で電卓で計算したものを入力していましたね。

 

式を入力しろよ。

 

プログラミングもそうですが、エクセルいじりも楽しいよね。

 

ワードは楽しくないけど。

 

ではまた。