AW: Zuordnungen auflisten (VBA)
01.07.2008 18:50:25
Erich
Hallo Martin (?),
eine Formellösung ist sicher auch möglich, würde aber wohl einigermaßen komplex.
Deshalb hier mit VBA:
Option Explicit
Sub Zuordnungen()
Dim rngA As Range, rngC As Range, arrE() As Integer
Dim zz As Long, ss As Long, lngK As Long, lngG As Long
Const AnzSp As Long = 5
Set rngA = Range(Cells(2, 1), Cells(Cells(Rows.Count, 1).End(xlUp).Row, AnzSp))
lngK = Application.Min(rngA)
lngG = Application.Max(rngA)
ReDim arrE(0 To 10, lngK To lngG)
For Each rngC In rngA
If Not IsEmpty(rngC.Offset(0, AnzSp)) Then
arrE(0, rngC) = arrE(0, rngC) + 1
arrE(arrE(0, rngC), rngC) = rngC.Offset(0, AnzSp)
End If
Next rngC
For zz = lngK To lngG
Cells(zz + 2, 2 * AnzSp + 2) = zz
For ss = 1 To arrE(0, zz)
Cells(zz + 2, ss + 2 * AnzSp + 2) = arrE(ss, zz)
Next ss
Next zz
End Sub
Und hier die Mappe zum Spielen: https://www.herber.de/bbs/user/53509.xls
Die grün markierten Werte habe ich ergänzt, zum Testen.
Eine Bemerkung noch: Die Null habe ich in die Liste rechts mit aufgenommen,
die Liste geht immer vom kleinsten bis zum größten in A:F auftauchenden Wert.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort