home RiV >

Ausgangssituation:

Ein Linkcheckerprogramm (xenu) erzeugt eine html-Datei (die ich in eine Excel-Tabelle konvertiere),

in der untereinander (also in derselben Spalte) viele Blöcke stehen.

Jeder einzelne Block ist wie folgt aufgebaut:
- eine Zeile mit fehlerhaftem Ziel-Link
- eine Zeile mit zugehörigem error-code
- mehrere Zeilen (unbestimmte Anzahl) mit Quellen, die auf den Fehllink verweisen.
- eine Leerzeile (danach kommt der nächste Block)

Ziel:
Die untereinander stehenden Zellen jedes einzelnen Blocks sollen nebeneinander stehen, so dass aus jedem mehrzeiligen Block jeweils eine Zeile wird.

Grund des Ziels:
Die Blöcke sollen über die Spalte "Quelle" sortiert werden können.

-----------------------

Programmschema:

Durchlaufe alle Zellen der Spalte A der Reihe nach.
Kopiere die 1. Zelle des Blocks in die 3. Spalte (i) der 1. Zeile (count-u) des Blocks
Kopiere die 2. Zeile des Blocks in die 4. Spalte (i+1) der 1. Zeile (count-u) des Blocks
usw. bis die aktuelle Zelle leer ist (<> ""), also der nächste Block kommt.
Dann setze i wieder auf 3, denn bei dem nächsten Block soll die 1. Zelle wieder in die 3. Spalte geschrieben werden.

---------------------------

Makro/VBA-Quelltext:

Sub BloeckeZuZeilen()
Dim i As Integer
Dim u As Integer
Dim z As Integer
i = 2
For Each Cell In Range("A1", Cells(Rows.Count, 1).End(xlUp).Address)
If Cell.Value <> "" Then
i = i + 1
u = i - 3
z = Count - u
Cell(z, i).Value = Cell.Value
Else
i = 2
End If
Next
End Sub

Wolfgang Hirth, 29.3.09