Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


3205 / 76735 ←次へ | 前へ→

【79166】Re:2種類の集計方法
発言  マナ  - 17/5/28(日) 15:23 -

引用なし
パスワード
   ▼たく さん:

集計用に配列は別に用意し、
dicにはインデックスを登録でももよいです。
理解しやすいほうをお使いください。

Sub 日時集計2()
  Dim dKey As String
  Dim c As Range
  Dim dic As Object
  Dim v()

  Set dic = CreateObject("Scripting.Dictionary")

  With Sheets("ソート")
    For Each c In .Range("A1", .Range("A" & .Rows.Count).End(xlUp))
      dKey = c.Value & vbTab & c.Offset(, 3).Value
      If Not dic.exists(dKey) Then
        n = dic.Count + 1
        dic(dKey) = n
        ReDim Preserve v(1 To 5, 1 To n)
        v(1, n) = c.Value
        v(2, n) = c.Offset(, 3).Value
        v(3, n) = c.Offset(, 4).Value
      End If
      n = dic(dKey)
      v(4, n) = v(4, n) + c.Offset(, 7).Value
      v(5, n) = v(5, n) + c.Offset(, 9).Value
    Next
  End With
 
  With Worsheets.Add
    .Name = "日時集計"
    .Range("A1").Resize(UBound(v, 2), 5).Value = _
      WorksheetFunction.Transpose(v)
    .Select
  End With

  Set dic = Nothing
 
End Sub

1 hits

【79149】2種類の集計方法 たく 17/5/25(木) 15:16 質問[未読]
【79150】Re:2種類の集計方法 カエムワセト 17/5/25(木) 15:41 発言[未読]
【79151】Re:2種類の集計方法 たく 17/5/25(木) 15:53 発言[未読]
【79153】Re:2種類の集計方法 カエムワセト 17/5/26(金) 1:19 発言[未読]
【79165】Re:2種類の集計方法 マナ 17/5/27(土) 19:54 発言[未読]
【79166】Re:2種類の集計方法 マナ 17/5/28(日) 15:23 発言[未読]

3205 / 76735 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free