アプリ版:「スタンプのみでお礼する」機能のリリースについて

会社で旅費精算書を作成しております。その中で関数について教えてください。(初心者なもので、よく分からない)宿泊の場合、在勤事業所又は出張先の地を午前6時前に出発した場合、750 円
/回を加算支給する。(1回のみ)在勤事業所又は出張先の地に午後10時を超えて到着した場
合、1,150 円/回を加算支給する。(1回のみ)
添付させて頂きましたExcelのセルW20に教えて頂いた関数を入力しました。
=(SUMPRODUCT((((J5:J18*100+K5:K18-($J$5*100+$K$5)>0)*1440+L5:L18*60+M5:M18)>"22:00"*1440)*(I5:I18="着"))>0)*1150+(SUMPRODUCT(((L5:L18*60+M5:M18)<"6:00"*1440)*(I5:I18="発")*(J5:J18<>""))>0)*750
K18は日付の入力。今回宿泊だったので日にちまたぎです。しかし22時越えはしていないのでW20には反映されるはずがないのですが、何故か金額が反映されてしまっており、どうしたらいいか分かりません。どうか、ご教示お願い致します。

「関数について」の質問画像

質問者からの補足コメント

  • うーん・・・

    やはり、そうだったのですね。添付のものが見れませんm(__)mもう一度添付頂けないでしょうか。

    No.1の回答に寄せられた補足コメントです。 補足日時:2023/05/26 15:51

A 回答 (4件)

前回のご質問に回答した者です。

前回回答でご説明したとおり、

>仕方ないので、当初出発日より後の日付けの到着日があれば日超えしたとみて、加算支給するという数式

を回答いたしました。つまり、仕方なく作成したものを、そのまま実務に適用するのは無理があります。数式の内容を理解したうえで、ご自身で調整されることが前提です。

>22時越えはしていないのでW20には反映されるはずがないのですが、・・・
>今回宿泊だったので日にちまたぎです

冒頭の説明のとおり、22時越えしているかどうかに拘らず、当初出発日より後の日付の到着日があれば加算支給されるという数式になっているので、「反映されるはずがない」つもりでも「反映される」ということになります。

また、今回の説明で前回のご質問には登場しない条件「宿泊の場合」という条件がついています。

EXCELはAIではないので、出発、到着の時刻だけでは宿泊したか否かの判断はできません。

日にちまたぎが発生したとして「出発日に帰着する予定だったが、遅くなって日にちまたぎになってしまった」と「到着予定時刻が初めから日またぎになる予定で、到着後宿泊した」との違いを時刻だけからどのように判断するのでしょうか?

そこで、
>宿泊の場合、在勤事業所又は出張先の地を午前6時前に出発した場合、750 円/回を加算支給する。

という条件のうち「宿泊の場合」は【無視する】ことにします。仮に、別セルに「宿泊の有無」というセルがあって、これに「有り・無し」が記録されているなら、それで判定する数式を作成することは可能ですが、何しろご質問者が掲出した画像が全く見えないので判断のしようがありません。

またまた「仕方がないので」、少しでもご質問者のニーズに近づける数式にするため、日またぎが発生した場合、6:00より前の時刻で到着していれば、前日からの出張の帰着が翌日になったものと判断することにしてみました。

いずれにしても以下の数式は、
>旅費精算書を作成しております
という旅費精算書ごとに、早朝出発1回のみ、深夜到着(日越え含む)1回のみの加算支給となります。このため日またぎで連日の出張を1枚の旅費精算書で作成する場合と、1日ごとに複数の旅費請求書を作成する場合の合計金額とが異なる場合があります。

数式は以下のとおりです。

=((SUMPRODUCT(LARGE(($J$5:$J$18*100+$K$5:$K$18-($J$5*100+$K$5))*($I$5:$I$18="着")*($L$5:$L$18*60+$M$5:$M$18<"6:00"*1440),1))+SUMPRODUCT((($L$5:$L$18*60+$M$5:$M$18)>"22:00"*1440)*($I$5:$I$18="着")))>0)*1150+(SUMPRODUCT((($L$5:$L$18*60+$M$5:$M$18)<"6:00"*1440)*($I$5:$I$18="発")*($J$5:$J$18<>""))>0)*750

※今回の回答は「宿泊の場合」を無視したので、全くの余談ですが、旅費規則の解釈が難しいです。「宿泊の場合、在勤事業所・・・場合、750円・・・」という表現を、条件の併記と捉えれば、「宿泊の場合または在勤事業所・・・場合、750円/回を・・・」という解釈になります。しかし、条件の追加と捉えれば「「宿泊の場合かつ在勤事業所・・・場合、750円/回を・・・」という解釈になりどちらともとれます。このような旅費規則を数式にするのは厳密な意味を理解しないと不可能です。
    • good
    • 0
この回答へのお礼

goomaniaさん。いつも有難うございます。添付画像が見づらくて申し訳ございません。とても助かりました。全く無知で申し訳ございません。関数を勉強したいと思います。goomaniaさんは凄いですね。

お礼日時:2023/05/29 09:33

>教えて頂いた関数を入力しました


教えてもらった関数の意味・内容を理解して、使用していますか?
理解していればご自身で試行錯誤できると思いますが。
他人の提示したものを、使用するときは、ちゃんと理解して上で使ってください。
    • good
    • 1
この回答へのお礼

有難うございます。初心者なもので内容をちゃんと理解しておりませんでした。ちゃんと勉強したいと思います。

お礼日時:2023/05/29 09:30

No.1さんは何も添付してません。


質問の画像が見えないという意味を質問文から引用しているだけです。

前にも質問しているならurlとか貼ってもらえませんかね。
    • good
    • 0
この回答へのお礼

ご指摘、有難うございます。今後はURLなど貼り付けたいと思います。

お礼日時:2023/05/29 09:31

》 添付させて頂きました…


貴方のソレ、全く判読不能ですよ、ハイ。
この回答への補足あり
    • good
    • 0
この回答へのお礼

有難うございます。無知なもので申し訳ございません。

お礼日時:2023/05/29 09:31

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!