戻る  □VBAのサロン  □ 使用方法  □ 新着記事  □ 新規に質問する!  □ トピック一覧  □ 検索  □ 過去ログ
[ 最新記事及び返信フォームをトピックトップへ ]
このトピック参照回数 :
働き方改革 月の平均80時間以内の算出について

    [130317] 働き方改革 月の平均80時間以内の算出について-

    ■親トピック/記事引用/メール受信=ON■

    □投稿者/ みちまろ -(2019/06/04(17:30))
    □U R L/

      いつも大変お世話になっております。
      皆様のお蔭により、本当に凄く助かっております。
      この場をお借りしまして感謝御礼申し上げさせて頂きます。


      ■時間外労働の上限規制の「2〜6ヵ月平均で80時間以内」というものがありまして
      (ttps://www.ieyasu.co/media/max_80h-average/)
      単月労働については、12ヶ月分自動で値が出るようにしたのですが、
      「2〜6ヵ月平均で80時間」について、基準月を決めないで算出する場合、どのように関数を組めばいいのか困惑しております。

      12ヶ月の中でMAXの値を基準にすべきなのか、基準月を変える事で値も変わるので、その中で最大の組み合わせ(連続月)を求めるべきなのか、お知恵をお貸し願えませんでしょうか。

      現在算出されている表は下記の通りです。


      A B C D E F
      1     2019/01   2019/02  2019/03   2019/04 ・・・
      2 個人コード 氏名 単月労働H 単月労働H 単月労働H 単月労働H
      3 00000001 Aさん 66.00   79.50 69.25   87.00
      4
      5
      6

      ◆最終的に求めたい値は、2ヶ月、3ヶ月・・・6ヶ月の平均した最大値です。
      基準月を設定しなくても可能なものなのでしょうか。

      悩んだ末、お伺いさせて頂いた次第です。
      どうぞよろしくお願い致します。


      使用OS win10 , Excel2016 です。


      ++++++++++++++++++++
      OS      ⇒OTHER
      Version⇒OTHER
      ++++++++++++++++++++




    [130320] Re[1]: 働き方改革 月の平均80時間以内の算出について-

    保留中です・・・ / 記事引用/メール受信=ON■

    □投稿者/ みちまろ -(2019/06/05(09:24))
    □U R L/

      いつも大変お世話になっております。
      この度はツリーを汚してしまいまして申し訳御座いませんでした。

      現在、AVERAGEIFS関数を用い、
      条件に"<>0" と ">=60" を組み込んで、60時間以上の月平均を年間4分割
      (1月〜3月、4月〜6月…)にして算出された3つの値で判断するように致しました。


      基準月を決めないで「2〜6ヵ月平均で…」というのは、結局私の頭では考えつかなかったため、6ヶ月平均に対しては4分割(3ヶ月単位)で対応することで異常を見つける事にしました。






    [130321] Re[2]: 働き方改革 月の平均80時間以内の算出について-

    記事引用/メール受信=OFF■

    □投稿者/ 半平太 -(2019/06/05(09:50))
    □U R L/
      1.補助表を右端に作成する(下図 S3:AE48)
      
      2.MAXを求める数式を入力する
      
        O3セル =IF(B3="","",MAX(INDEX(MMULT($C3:$N3*$S$4:$AD$48,ROW($A$1:$A$12)^0)/$AE$4:$AE$48,0)))
        下にコピー
      
      3.個人別にどこの時期でMAXになったか調べる
      
         (1)Q3セルに調査したい氏名を入れる。
          手作業。
          入力規則で氏名を選べるようにすると楽。下図は、Wさんの例。
      
        (2) Q2セル =MATCH($Q$3,$B:$B,0)
        (3) Q4セル =SUMPRODUCT(INDEX($C:$N,$Q$2,0)*S4:AD4)/AE4
          下にコピー
      
      <サンプル 結果図>
       行 _____A_____ ___B___ ___C___ ___D___ ___E___ ___F___ ___G___ ___H___  ___L___ ___M___ ___N___ ___O___ 下に続く
        1                     2019/01 2019/02 2019/03 2019/04 2019/05 2019/06  2019/10 2019/11 2019/12        
        2 個人コード  氏名    単月H   単月H   単月H   単月H   単月H   単月H    単月H   単月H   単月H   平均MAX
        3        001  Aさん     80      75      83      70      98      80                               89
        4        002  Zさん                                                              88      66      77
        5        003  Wさん                                                     129      77      91     103
      
      <続き>
       行 ___Q___ ___R___ _S_ _T_ _U_ _V_ _W_ _X_ _Y_ _Z_ _AA_ _AB_ _AC_ _AD_  AE
        1 個人別検証用                                                          
        2      5                                                                  
        3   Wさん          1   2   3   4   5   6   7   8    9   10   11   12 	月数
        4   0.00           1   1   0   0   0   0   0   0    0    0    0    0    2
        5   0.00           0   1   1   0   0   0   0   0    0    0    0    0    2
        6   0.00           0   0   1   1   0   0   0   0    0    0    0    0    2
        7   0.00           0   0   0   1   1   0   0   0    0    0    0    0    2
        8   0.00           0   0   0   0   1   1   0   0    0    0    0    0    2
        9   0.00           0   0   0   0   0   1   1   0    0    0    0    0    2
       10   0.00           0   0   0   0   0   0   1   1    0    0    0    0    2
       11   0.00           0   0   0   0   0   0   0   1    1    0    0    0    2
       12  64.50           0   0   0   0   0   0   0   0    1    1    0    0    2
       13 103.00           0   0   0   0   0   0   0   0    0    1    1    0    2
       14  84.00           0   0   0   0   0   0   0   0    0    0    1    1    2
       15   0.00           1   1   1   0   0   0   0   0    0    0    0    0    3
       16   0.00           0   1   1   1   0   0   0   0    0    0    0    0    3
       17   0.00           0   0   1   1   1   0   0   0    0    0    0    0    3
       18   0.00           0   0   0   1   1   1   0   0    0    0    0    0    3
       19   0.00           0   0   0   0   1   1   1   0    0    0    0    0    3
       20   0.00           0   0   0   0   0   1   1   1    0    0    0    0    3
       21   0.00           0   0   0   0   0   0   1   1    1    0    0    0    3
       22  43.00           0   0   0   0   0   0   0   1    1    1    0    0    3
       23  68.67           0   0   0   0   0   0   0   0    1    1    1    0    3
       24  99.00           0   0   0   0   0   0   0   0    0    1    1    1    3
       25   0.00           1   1   1   1   0   0   0   0    0    0    0    0    4
       26   0.00           0   1   1   1   1   0   0   0    0    0    0    0    4
       27   0.00           0   0   1   1   1   1   0   0    0    0    0    0    4
       28   0.00           0   0   0   1   1   1   1   0    0    0    0    0    4
       29   0.00           0   0   0   0   1   1   1   1    0    0    0    0    4
       30   0.00           0   0   0   0   0   1   1   1    1    0    0    0    4
       31  32.25           0   0   0   0   0   0   1   1    1    1    0    0    4
       32  51.50           0   0   0   0   0   0   0   1    1    1    1    0    4
       33  74.25           0   0   0   0   0   0   0   0    1    1    1    1    4
       34   0.00           1   1   1   1   1   0   0   0    0    0    0    0    5
       35   0.00           0   1   1   1   1   1   0   0    0    0    0    0    5
       36   0.00           0   0   1   1   1   1   1   0    0    0    0    0    5
       37   0.00           0   0   0   1   1   1   1   1    0    0    0    0    5
       38   0.00           0   0   0   0   1   1   1   1    1    0    0    0    5
       39  25.80           0   0   0   0   0   1   1   1    1    1    0    0    5
       40  41.20           0   0   0   0   0   0   1   1    1    1    1    0    5
       41  59.40           0   0   0   0   0   0   0   1    1    1    1    1    5
       42   0.00           1   1   1   1   1   1   0   0    0    0    0    0    6
       43   0.00           0   1   1   1   1   1   1   0    0    0    0    0    6
       44   0.00           0   0   1   1   1   1   1   1    0    0    0    0    6
       45   0.00           0   0   0   1   1   1   1   1    1    0    0    0    6
       46  21.50           0   0   0   0   1   1   1   1    1    1    0    0    6
       47  34.33           0   0   0   0   0   1   1   1    1    1    1    0    6
       48  49.50           0   0   0   0   0   0   1   1    1    1    1    1    6
      




    [130325] Re[3]: 働き方改革 月の平均80時間以内の算出について-

    保留中です・・・ / 記事引用/メール受信=ON■

    □投稿者/ みちまろ -(2019/06/05(12:00))
    □U R L/

      半平太様、いつも多くのご指導を頂きまして誠に有難うございます。
      この度も、お時間を割いて頂きました事、感謝御礼申し上げます。

      [O列]の平均MAX値を求める式は求めたい値でありましたので、これから式の導入テストをしてみたく思っております。


      実は今、前述させて頂きました通り、AVERAGEIFS関数を用いて補助表を右に作っておりました。
      エラー値の"#DIV/0!"が表示され悩んでいた所です。


      [サンプル結果図 P列]に AVERAGEIFS関数で、条件の所にセル[A1]の値(時間)、例えば60として条件を
      『60時間以上』
      若しくは
      『60時間以下』という意味として関数内の数式に使いたい場合、どうすれば宜しいのでしょうかご教授頂けると幸いです。


      情けなくとても見せられるような関数の構築で恥ずかしいのですが、今の式を下記に貼らせて頂きます。

      =AVERAGEIFS(C3:N3,C3:N3,"<>0",C3:N3,">=60")






    [130326] Re[4]: 働き方改革 月の平均80時間以内の算出について-

    記事引用/メール受信=OFF■

    □投稿者/ 半平太 -(2019/06/05(12:35))
    □U R L/
      質問を正しく理解しているか自信が無いですが、
      
      >    =AVERAGEIFS(C3:N3,C3:N3,"<>0",C3:N3,">=60")
      
       =IFERROR(AVERAGEIFS(C3:N3,C3:N3,">=" & $A$1),"")
       =IFERROR(AVERAGEIFS(C3:N3,C3:N3,"<>0",C3:N3,"<" & $A$1),"")




    [130327] Re[5]: 働き方改革 月の平均80時間以内の算出について-

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

    □投稿者/ みちまろ -(2019/06/05(13:16))
    □U R L/

      半平太様、早速返信を下さり本当に有難うございます。

      >">=" & $A$1

      "&" を使うのですね。
      今、コードのテスト最中でありますが、うまくいきそうな感じです。
      先に御礼をと思いまして書き込みさせて頂きました。

      結果は他の方にも手助けになれればと思いますので
      改めて書き込みをさせて頂きます。

      なにかしらの御礼も出来ればと思っているのですが^^;




    [130329] Re[6]: 働き方改革 月の平均80時間以内の算出について-

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

    □投稿者/ みちまろ -(2019/06/05(16:16))
    □U R L/

      半平太様、この度も本当にお世話になりました。
      今回も本当に助かりました。

      補助表を右側に作成し、各月が全部"0.00"だと、エラー表示になったので、下記のような式を作り対応致しました。

      恥ずかしくて正直お見せできるような式ではないのですが、これで解決致しました。


      =IF(SUM(C3:N3)=0,0,IF(AVERAGEIF(C3:N3,"<>0",C3:N3)<=$A$1,IFERROR(AVERAGEIF(C3:N3,"<>0",C3:N3),"-"),IFERROR(AVERAGEIFS(C3:N3,C3:N3,"<>0",C3:N3,">="&$A$1),"-")))

      半平太様、有難うございました。



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

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

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


- Child Forum -
Edit:ゆう-G