- ベストアンサー
Excel:時間有給の正当性を判断する方法
- 勤務表に時間有給を導入する際、正しい入力を判断する方法について教えてください。
- 有給時間の開始または終了時間の入力がうまくいかない場合、条件付き書式を使用して間違いを知らせたいです。
- 勤務時間の頭または尻尾に時間有給の時刻を入力させ、正当性を確認したいです。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>>私の考えと同じで、条件書式に作ったからダメだったのか? 多分何らかの設定ミスや入力ミスだとは思います。ただこのあたりの切り分けのためにも、別個に判定セルを置くのがオススメでもあります。 (判定部分のミスか条件付き書式のミスかすぐ分かる)
その他の回答 (3)
- f272
- ベストアンサー率46% (8467/18126)
#2です。すみません。 (有給終了時刻-勤務開始時刻)*(有給開始時刻-勤務終了時刻)≧0 の間違いでした。
お礼
正しいパターンでは必ず有給時間は、勤務開始または終了のどちらかと一致するから0になり正しいというわけですね それ以外はどんな数字(負の数字でも)になろうが片方が0になれば、ANDだから0になるという理論?
補足
数式にしたのですが、うまくいきませんでした 別枠で、以下の数式(有給開始時間)を設定して、それを条件書式で見る 方法で行きます(正常動作確認) =IF(OR(ISBLANK(H10),OR(H10=D10,H10<C10)),1,0)
- f272
- ベストアンサー率46% (8467/18126)
日をまたぐような入力がないこと 有給開始時刻<有給終了時刻と入力されていること 勤務開始時刻<勤務終了時刻と入力されていること を前提とすれば (有給終了時刻-勤務開始時刻)*(勤務終了時刻-有給開始時刻)≧0 となっていればOK
補足
ありがとうございます しかし、その前提はあっても この条件では勤務時間内に有給時間が入力されても 正の数になり、要求は満たさない 10時~18時の勤務で、13時~15時の有給だと 5*5=25となる 勤務時間中の有給はNGです
- kon555
- ベストアンサー率51% (1842/3559)
条件付き書式だけでやるよりも、if関数で判定セルを作った方がいいと思います。条件付き書式を作り込むと、何か変更になった時に修正が面倒なので。 Excelではif関数と比較演算子で簡単に時刻の前後判定ができますから、それで計算させてしまえば判定は可能です。 例えば条件ないなら〇、違反していれば×と表示させるようにif関数を組んで、そのセルが×なら赤くするように条件付き書式で設定、というのがベターです。 https://daitaideit.com/excel-time-compare/
お礼
いいアイデアありがとうございます たしかに、面倒ですね 段階的にやってやったほうが、変更は数式だけですみますね ところで リンク先を閲覧すればわかるかと思ったのですが 私の考えと同じで、条件書式に作ったからダメだったのか?
お礼
別枠で以下のような数式を設定し、それを条件付き書式で見るようにすると、うまく動いてくれているようです ありがとうございました =IF(OR(ISBLANK(H10),OR(H10=D10,H10<C10)),1,0) 開始時間
補足
そうですね そのほうがわかりやすいし、メンテしやすい 肝心の条件書式はどうしたらいいか? 有給開始時間:勤務時間内はNGだけど、勤務終了時刻だけはOK 有給終了時間:勤務時間内はNGだけど、勤務開始時刻だけはOK これでいけるだろうか?