ich habe ein kleines Problem mit meinem Makro-Code, den ich geschrieben habe.
Ich habe ein Inhaltsverzeichnis, für das je nach Index die Seitenzahlen aus den betreffenden Zeilen zu einem langen Text in einer Spalte zusammengefasst werden soll. Das sieht beispielsweise so aus:
1 2
3 6
7 9
15 18
19 35
38 41
Zusammenfassung in der Spalte: 1 bis 2, 3 bis 6, 7 bis 9, 15 bis 18, 19 bis 35, 38 bis 41
Nun möchte ich die Zusammenfassung in der Weise modifizieren, als dass Folgeseiten zu einer Ausgabe zusammengefasst werden. Ich stelle mir das Ergebnis so vor:
1 bis 9, 15 bis 35, 38 bis 41
Mein Code sieht bisher so aus:
Sub SeitenzahlenVerbinden()
Dim Ausgabe As Variant
For i = 1 To 39
If Not Cells(i + 23, "BJ") = "" And Not Cells(i + 23, "BK") = "" Then
Ausgabe = Ausgabe & Cells(i + 23, "BJ") & Cells(i + 23, "BC") & " bis " & Cells(i + 23, _
_
_
_
"BK") & Cells(i + 23, "BC") & ", "
ElseIf Not Cells(i + 23, "BJ") = "" And Cells(i + 23, "BK") = "" Then
Ausgabe = Ausgabe & Cells(i + 23, "BJ") & Cells(i + 23, "BC") & ", "
Else
Ausgabe = Ausgabe
End If
Next i
Laenge = Len(Ausgabe)
Cells(3, "BM") = Left(Ausgabe, Laenge - 2)
End Sub
Da es auch Spalten geben kann, in denen keine Seitenzahlen vorkommen, überprüfe ich dies vorher, damit in der Ausgabe keine "leeren" Seitenzahlen mit dem Bindewort "bis" stehen.
Habt ihr eine Idee, wie ich das schaffen könnte? Ich denke, dass ich es mit einer weiteren Schleife (For, While?) machen müsste, aber ich schaffe es nicht.
Gruß,
amfgimbte