戻る  □一般操作のサロン  □ 使用方法  □ 新着記事  □ 新規に質問する!  □ トピック一覧  □ 検索  □ 過去ログ
[ 最新記事及び返信フォームをトピックトップへ ]
このトピック参照回数 :
深夜時間数の抽出

    [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


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [194720] Re[5]: 深夜時間数の抽出-

    解決!!ありがとうございました! / 記事引用/メール受信=OFF■

    □投稿者/ junjun -(2022/02/06(13:03))
    □U R L/

      お忙しい中ご返答誠にありがとうございます。
      半平太さんのコードで解決しました!
      マクロの記録だと使い方が悪いのか出来なっかったのですが、
      今後マクロの記録も活用しながらやっていきたいと思います。

      本当に助かりました。
      メッセージ頂いた皆様、誠にありがとうございました!



このトピック内容の全ページ数 / [0]

このトピックに書きこむ
Name/
E-Mail/

└>このツリーのレス記事をメールで受信しますか? YES/ NO/
Title/
URL/
Comment/ 通常モード->  図表モード-> (←の場合適当に改行を入れて下さい)
タグが使用できます。例 ⇒ <font color="blue">文字</font>
解決!!ありがとうございました! 解決       保留中です・・・ 保留        迷宮入りorほかあたって見ます・・ 迷宮入       すいませ〜ん。誰か〜! Help! ←※回答者専用
解決したらチェック       保留(コードテスト中など・・)         解決不可orレスが全く付かなくてほかのサイトに行くときなど・・
削除キー/
(半角8文字以内) 


- Child Forum -
Edit:ゆう-G