VBA gibt's auch
21.09.2011 09:47:23
Rudi
Hallo,
in ein Modul und aus der Tabelle starten:
Sub xxxx()
Dim objDict As Object, arrErg(), rngC As Range, lngI As Long, arrKeys
Set objDict = CreateObject("Scripting.Dictionary")
For Each rngC In Range(Cells(2, 1), Cells(2, 1).End(xlDown))
objDict(rngC.Value & "_" & rngC.Offset(, 1).Value) = _
objDict(rngC.Value & "_" & rngC.Offset(, 1).Value) + rngC.Offset(, 2).Value
Next
arrKeys = objDict.Keys
ReDim arrErg(1 To objDict.Count, 1 To 3)
For lngI = 1 To objDict.Count
arrErg(lngI, 1) = Split(arrKeys(lngI - 1), "_")(0)
arrErg(lngI, 2) = Split(arrKeys(lngI - 1), "_")(1)
arrErg(lngI, 3) = objDict(arrKeys(lngI - 1))
Next
Range(Cells(2, 1), Cells(2, 1).End(xlDown)).Resize(, 3).ClearContents
Cells(2, 1).Resize(objDict.Count, 3) = arrErg
End Sub
Gruß
Rudi