このトピックに書きこむ |
---|
Re[4]: 利用時間の計算 | |
---|---|
[196204] Re[4]: 利用時間の計算- ■記事引用/メール受信=OFF■ □投稿者/ ミケ -(2024/05/04(05:18)) □U R L/ ありがとうございます。 説明も書いていただいて、助かります。 これから勉強していきます。 またご縁がありましたら教えてください。 |
[196199] Re[3]: 利用時間の計算- ■記事引用/メール受信=OFF■ □投稿者/ 半平太 -(2024/05/02(23:24)) □U R L/ こんな事かな? Sub test() Dim r As Range, rG As Range, RW As Long, CL As Long Dim Ary, V, AryRW, Ret() As Long '8:00,10:00,11:00 Ary = Array(-2000, 480, 600, 660) '時間境界(1440倍して整数の分の配列とする) '- Set r = Range("C2:E7") Set rG = r.Offset(, -2).Resize(, 1) 'グループ範囲(A列) ReDim Ret(1 To 9, 1 To r.Columns.Count) '9行の結果配列に変更する With Application For CL = 1 To r.Columns.Count For RW = 1 To r.Rows.Count Step 2 V = .Round((r(RW + 1, CL) - r(RW, CL)) * 1440, 0) AryRW = .Match(V, Ary) '青なら、5行下を加算対象に変更する AryRW = AryRW + IIf(rG(RW, 1) = "青", 5, 0) Ret(AryRW, CL) = Ret(AryRW, CL) + 1 Next RW Next CL End With '結果表示 Range("A11:A19") = [{"X";"A";"B";"C";"空行";"X";"A";"B";"C"}] Range("B11").Resize(9, UBound(Ret, 2)) = Ret Range("A15").Resize(1, UBound(Ret, 2) + 1) = Empty End Sub |
[196197] Re[1]: 利用時間の計算- ■記事引用/メール受信=OFF■ □投稿者/ 半平太 -(2024/05/02(16:48)) □U R L/ こんな事かな? Sub test() Dim r As Range, RW As Long, CL As Long Dim Ary, V, AryRW, Ret() As Long Ary = Array(-2000, 480, 600, 660) Set r = Range("B2:D7") ReDim Ret(1 To 4, 1 To r.Columns.Count) With Application For CL = 1 To r.Columns.Count For RW = 1 To r.Rows.Count Step 2 V = .Round((r(RW + 1, CL) - r(RW, CL)) * 1440, 0) AryRW = .Match(V, Ary) Ret(AryRW, CL) = Ret(AryRW, CL) + 1 Next RW Next CL End With '結果表示 Range("A11:A14") = [{"X";"A";"B";"C"}] Range("B11").Resize(4, UBound(Ret, 2)) = Ret End Sub |
[196196] 利用時間の計算- ■親トピック/記事引用/メール受信=OFF■ □投稿者/ ミケ -(2024/05/02(06:37)) □U R L/ A B C D 1 氏名 1日目 2日目 3日目 2 山田 9:00 |