会社の部署飲み会やらで、参加者みんな同額の割り勘じゃなくて、ある程度年功序列・立場を加味した割り勘ってありますよね。傾斜割り勘とでも言うんですかね。
いちいち計算していくのもめんどくさいので、スプレッドシートで序列ごとに、参加人数・負担係数・切り上げ単位・総額を入力したら、勝手に計算してくれる簡易的なシステムを作ってみました。
使用した関数は、【CEILING関数】【SUMPRODUCT関数】【SUM関数】です。
こんにちは。当ブログの管理人のくろんです。
30代サラリーマン、新規事業推進室に所属。仕事で身につけた業務効率化ノウハウをアウトプットしていきます。読んでくれた方の業務が一秒でも早く終わりますように!!
最初に年功序列割り勘スプレッド完成物共有!
このスプレッドシートは、緑色の箇所を入力すれば、赤色の箇所が自動的に計算されますよというものになっています。
序列は5段階まで対応(もし使わない序列があれば、空欄にすれば大丈夫です)
社長ー部長ー課長ー係長ー平社員のイメージです。
序列ごとに、下記項目を設定します。
参加人数
負担係数→平社員一人の支払いを1としたときの、負担割合をイメージ。10だったら10倍ですね。社長さんゴチになります!
切り上げ単位→1円単位で上司様に支払いを求めるなんて逆に失礼なので、何円単位で切り上げるかの設定です。社長には1万円単位でしかゴチにならない。。。ですよね?
そして、最後に総額を設定して貰えば、しゃしゃしゃと計算され、それぞれの序列ごとに一人あたりの割り勘金額が算出されます。切り上げ機能が盛り込まれているので、設定値によっては、割り勘金額の合計値のほうが大きくなる可能性がありますが、それは幹事の取り分ってことで。
え???そもそも会社の飲み会なんだから、全部経費で落とせないかって??
それは、個別に相談してみてくださいまし。
どのような計算式になっているか
序列1位の割り勘金額は、下記式でベースを算出します。
飲み会費用総額 ✕ 序列1位組負担額 / 序列1位参加人数
= 飲み会費用総額 ✕ (序列1位負担能力 / 序列1位~5位負担能力) / 序列1位参加人数
= 飲み会費用総額 ✕ ((序列1位負担係数✕人数) / ((序列1位負担係数✕人数)+(序列2位負担係数✕人数)+(序列3位負担係数✕人数)+(序列4位負担係数✕人数)+(序列5位負担係数✕人数))) / 序列1位参加人数
この内容を、関数に落とし込むと。
= $B$11 ✕ ((B2 ✕ C2) / SUMPRODUCT($B2:B$6,$C2:C$6) / B2)
『SUMPRODUCT関数』は配列どおしを掛け合わせて、その総和を返してくれる関数です。今回のに、もってこいの関数ですね。
また、これで算出された金額について、切り上げを盛り込むので、『CEILING関数』を用います。
なので、E2セルに入る関数は、このようになります。
=ceiling($B$11*(B2*C2/sumproduct($B2:B$6,$C2:C$6))/B2,D2)
序列2位の割り勘金額は、下記式でベースを算出します。
(飲み会費用総額 - 序列1位組支払い総額) ✕ 序列2位組負担額 / 序列2位参加人数
= (飲み会費用総額 - 序列1位組支払い総額) ✕ (序列2位負担能力 / 序列2位~5位負担能力) / 序列2位参加人数
= (飲み会費用総額 - 序列1位組支払い総額) ✕ ((序列2位負担係数✕人数) / ((序列2位負担係数✕人数)+(序列3位負担係数✕人数)+(序列4位負担係数✕人数)+(序列5位負担係数✕人数))) / 序列2位参加人数
序列1位組が払ってくれた分を除いた飲み会費用について、序列2位組の負担能力を掛けて、それを序列2位参加人数で割るといった計算になります。
また、この計算式に、そもそもこの序列の方がいなかったら、割り勘金額はもちろん0円だよねという条件式と、『CEILING関数』使っての切り上げ処理を加えます。
=if(B3=0,0,ceiling(($B$11-sumproduct($B$2:B2,$E$2:E2))*(B3*C3/sumproduct($B3:B$6,$C3:C$6))/B3,D3))
このような感じになりますね。
序列3位以降も同じような考え方で、その序列よりも上の序列組が払ってくれたお金を飲み会総額から除いた金額について、その序列の負担能力の割合を加味して算出するといった感じです。
まとめ
単純な割り勘ではなく、傾斜を加味した割り勘をする計算式は、【CEILING関数】【SUMPRODUCT関数】【SUM関数】を用いて作ることが出来ます。
構築するときには、どの順番で計算してけばいいのかを、流れを文章ベースで書き出して、それを数式化するといった手順を踏むと、わけわからなくなりにくいと思いますので、試してみてくださいー。