- ベストアンサー
VBA EXCEL 集計 操作 カウント
EXCELのVBAにて「変換」ボタンを押したら 名前と値段が同じ物の個数が表示され 管理番号も並ぶようなプログラムを作りたいのですが どのように構築すればよいでしょうか? 詳しくは図をご覧ください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
「イチゴ 200」が、何故別々なのかよく見えないので不明ですけど。 Sub try() Dim myDic As Object Dim r As Range, rr As Range Dim st As String Dim key, v Set myDic = CreateObject("Scripting.Dictionary") For Each r In Range("B3", Cells(Rows.Count, 2).End(xlUp)) st = r.Value & "_" & r.Offset(, 1).Value If Not myDic.Exists(st) Then myDic(st) = Array(1, r.Offset(, 2).Value) Else myDic(st) = Array(myDic(st)(0) + 1, myDic(st)(1) & "," & r.Offset(, 2).Value) End If Next Set rr = Range("G3") For Each key In myDic.keys rr.Resize(, 2).Value = Split(key, "_") rr.Offset(, 2).Value = myDic(key)(0) v = Split(myDic(key)(1), ",") rr.Offset(, 3).Resize(, UBound(v) + 1).Value = v Set rr = rr.Offset(1) Next Set myDic = Nothing Set rr = Nothing End Sub こうゆう感じの事でしょうか?