Excel VBA質問箱 IV

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

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


21872 / 76738 ←次へ | 前へ→

【60254】Re:データ集計について
発言  kanabun  - 09/2/6(金) 0:20 -

引用なし
パスワード
   ▼ふくじ さん:
こんばんは。

>合計、データ数の計算がわからず悩んでいます。

Dictionaryをもうひとつ追加して、
  dic は合計用、
  dic2 は データ数用
としたら、どうですか?

Sub Try1()
  Dim rng As Range
  Dim v
  Dim ss As String
  Dim i As Long, j As Long
  Dim dic As Object
  Dim dic2 As Object
  
  With Worksheets(1)
    v = .Range("A2", .Cells(.Rows.Count, 1).End(xlUp)).Resize(, 4).Value
  End With
  Set dic = CreateObject("Scripting.Dictionary")
  Set dic2 = CreateObject("Scripting.Dictionary")
  dic("品名") = "合計"
  dic2("品名") = "データ数"
  For i = 1 To UBound(v)
    ss = v(i, 1)
    For j = 2 To 4
      If IsEmpty(v(i, j)) Then Exit For
      dic(ss) = dic(ss) + v(i, j)
      dic2(ss) = dic2(ss) + 1
    Next
  Next

  '集計結果を新しいシートに書き出す
  Worksheets(2).Range("A1").Resize(dic.Count, 3).Value = _
    Application.Transpose(Array(dic.Keys, dic.Items, dic2.Items))
 
  Set dic = Nothing
  Set dic2 = Nothing

End Sub

0 hits

【60253】データ集計について ふくじ 09/2/6(金) 0:01 質問
【60254】Re:データ集計について kanabun 09/2/6(金) 0:20 発言
【60258】Re:データ集計について ふくじ 09/2/6(金) 9:37 お礼

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