お世話になっています
質問No.9097443
質問No.9089695
質問No.9104294でご指導いただきました。
◎希望条件
勉強時間を集計したシートA列:科目 B列:開始日 C列:開始時刻 D列:終了日 E列:終了時刻
の記載があるsheet1には終了時刻から開始時刻を差し引いた作業時間を表示する列がない。
sheet1に差引の作業時間列を追加することなく、別のシートで各科目の勉強時間を集計する方法を教えてもらいました。
*************************************************************************************
◎レクチャー頂いた内容は
Sheet3のA列とB列を作業列として使用して、Sheet2に科目ごとの勉強時間の合計を集計するものとします。
Sheet3のA2セルに次の関数を入力して下さい。
=IF(INDEX(Sheet1!$A:$A,ROW())="","",IF(COUNTIF(Sheet1!$A$1:INDEX(Sheet1!$A:$A,ROW()),INDEX(Sheet1!$A:$A,ROW()))=1,ROW(),""))
Sheet3のB2セルに次の関数を入力して下さい。
=IF(OR(INDEX(Sheet1!$B:$B,ROW())="",INDEX(Sheet1!$C:$C,ROW())="",INDEX(Sheet1!$D:$D,ROW())="",INDEX(Sheet1!$E:$E,ROW())=""),"",IF(ISERROR(1/(YEAR(INDEX(Sheet1!$B:$B,ROW()))>1904)/(INDEX(Sheet1!$C:$C,ROW())+0>=0)/(INDEX(Sheet1!$C:$C,ROW())+0<1)/(YEAR(INDEX(Sheet1!$D:$D,ROW()))>1904)/(INDEX(Sheet1!$E:$E,ROW())+0>=0)/(INDEX(Sheet1!$E:$E,ROW())+0<1)),"",IFERROR(TEXT(INDEX(Sheet1!$D:$D,ROW())+INDEX(Sheet1!$E:$E,ROW())-INDEX(Sheet1!$B:$B,ROW())-INDEX(Sheet1!$C:$C,ROW()),"[h]:m:s")+0,"")))
Sheet2のA2セルに次の関数を入力して下さい。
=IF(ROWS(A$1:A2)>COUNT(Sheet3!$A:$A),"",INDEX(Sheet1!$A:$A,SMALL(Sheet3!$A:$A,ROWS(A$1:A2))))
Sheet2のB2セルに次の関数を入力して下さい。
=IF($A2="","",TEXT(SUMIF(Sheet1!$A:$A,$A2,Sheet3!$B:$B),"[h]:m:s")+0)
*************************************************************************************
◎☆今回は、このシートに集計期間を設定したいのですが、
可能でしょうか。
上記のやり方だと、Sheet1の全ての日付の項目を集計してしまいます。
そこで、
D3に集計指定期間開始日
E3に集計指定期間終了日 を設定するなどしてできないでしょうか。
sheet!1に指定期間日を設定しないやり方でしたら、Sheet2でもSheet3にでもどちらでもいいのですが。
よろしくお願いします。
お礼
再現できました。 時間がかかりましたが、実証は難しいかなと思いましたが、できまして、使うものですので、助かりました。 私の理解力が追いつけば、大変活用できるシートと思います。 最後に再現できて助かりました。 ありがとうございます。