深夜時間数の抽出 | |
---|---|
[194708] 深夜時間数の抽出- ■親トピック/記事引用/メール受信=ON■ □投稿者/ junjun -(2022/02/04(09:32)) □U R L/ いつも大変お世話になっております。 今回もVBAで分からないことがあり質問に参りました。 お忙しい中誠に恐縮ですが、なにとぞご教示くださいませ。 労働時間の集計で深夜時間数を抽出したいと思っております。 *深夜時間帯 22:00〜5:00(労働基準法より) 例・イメージ)勤務した時間が22:00移行の場合はC列にその時間を抽出 A列 B列 C列 10:00 23:00 1.00 →これを1か月間毎に集計する(給与は月給制) エクセル関数は実際に使っているのですが、 VBA化しようとした時によく分からないでいます。 (かなり調べたのですが、活用出来ませんでした) 実際に使っている関数 =IF(COUNT(RC[-7]:RC[-6])<2,"",MAX(0,MIN("5:00",(RC[-6]<RC[-7])+RC[-6])-RC[-7])+MAX(0,MIN((RC[-6]<RC[-7])+RC[-6],"29:00")-MAX(RC[-7],"22:00")))*24 実際の帳票は下記の並びです。 B列 日付け 1 2 3 ・・・ C列 曜日 D列 出勤時間 E列 退勤時間 F列 労働時間 G列 休憩時間1 H列 休憩時間2 I列 実働時間 J列 残業時間 K列 深夜時間 *G列とH列の休憩時間1,2は合計して集計 *K列にVBAで深夜時間を抽出したいと思っております。 お忙しい中誠に恐縮ですが、 ご教示頂ければ幸いでございます。 なにとぞ、宜しくお願い申し上げます。 ++++++++++++++++++++ OS ⇒OTHER Version⇒OTHER ++++++++++++++++++++ |
[194709] Re[1]: 深夜時間数の抽出- ■記事引用/メール受信=OFF■ □投稿者/ *** -(2022/02/04(18:36)) □U R L/ 何故、数式で出来ているのに、わざわざVBAでやる必要があるのでしょうか? |
[194714] Re[2]: 深夜時間数の抽出- ■記事引用/メール受信=OFF■ □投稿者/ junjun -(2022/02/05(16:41)) □U R L/ ご返信誠にありがとうございます。 業務効率化の一環で、VBA化しようと思っております。 現在の作業はエクセル関数をいくつか使っているのですが、 それをVBAコードにして、全自動で行いたいと考えています。 そのVBAコード化する中で、深夜時間の関数がVBA化出来ずに質問に至りました。 |
[194715] Re[3]: 深夜時間数の抽出- ■記事引用/メール受信=OFF■ □投稿者/ マナ -(2022/02/05(17:01)) □U R L/ 数式を理解できていませんが… 1)マクロの記録開始 2)数式が入力されているセルを選択 3)F2キーを押して、そのままEnter 4)マクロの記録終了 |
[194719] Re[4]: 深夜時間数の抽出- ■記事引用/メール受信=OFF■ □投稿者/ 半平太 -(2022/02/06(12:30)) □U R L/ こんなことなんですかねぇ。。 Sub lateWork() With Range("K2", Cells(Rows.Count, "D").End(xlUp).Offset(, 7)) .FormulaLocal = "=IF(COUNT(D2:E2)<2,"""",MAX(0,MIN(""5:00"",(E2<D2)+E2)-D2)+MAX(0,MIN((E2<D2)+E2,""29:00"")-MAX(D2,""22:00"")))*24" End With End Sub |
[194720] Re[5]: 深夜時間数の抽出- ■ / 記事引用/メール受信=OFF■ □投稿者/ junjun -(2022/02/06(13:03)) □U R L/ お忙しい中ご返答誠にありがとうございます。 半平太さんのコードで解決しました! マクロの記録だと使い方が悪いのか出来なっかったのですが、 今後マクロの記録も活用しながらやっていきたいと思います。 本当に助かりました。 メッセージ頂いた皆様、誠にありがとうございました! |
このトピックに書きこむ |
---|