AW: Bestimmte Daten in gleichnamiges Registerblatt sor
06.02.2013 07:30:41
haw
Hallo Marco,
dass in mehreren Spalten ein X stehen kann, hast du nicht erwähnt.
Das bedingt eine vollkommen andere Herangehensweise.
Den Übertrag in ein Word-Dokument kann man sicher realisieren, nur bin ich in da nicht so firm.
Ich würde das in eine eigene Excel-Tabelle schreiben.
Hier einmal die Lösung für alle X. Das X wird nach erfolgtem Übertrag in X_ umgewandelt.
Sub Übertragen()
Dim ws As Worksheet, wsÜ As Worksheet, lz&, i&, efz&, gef As Range, Adr$
Set wsÜ = ThisWorkbook.Worksheets("Übersicht")
Set gef = wsÜ.Cells.Find("X", LookAt:=xlWhole)
If Not gef Is Nothing Then
Adr = gef.Address
Set ws = ThisWorkbook.Worksheets(wsÜ.Cells(1, gef.Column).Value)
If ws.Range("A1").Value = "" Then wsÜ.Range("A1:C1").Copy ws.Range("A1")
efz = ws.Cells(Rows.Count, 1).End(xlUp).Row + 1
wsÜ.Range(wsÜ.Cells(gef.Row, 1), wsÜ.Cells(gef.Row, 3)).Copy ws.Cells(efz, 1)
gef.Value = "X_"
End If
Do
Set gef = wsÜ.Cells.FindNext(gef)
If Not gef Is Nothing Then
Set ws = ThisWorkbook.Worksheets(wsÜ.Cells(1, gef.Column).Value)
If ws.Range("A1").Value = "" Then wsÜ.Range("A1:C1").Copy ws.Range("A1")
efz = ws.Cells(Rows.Count, 1).End(xlUp).Row + 1
wsÜ.Range(wsÜ.Cells(gef.Row, 1), wsÜ.Cells(gef.Row, 3)).Copy ws.Cells(efz, 1)
gef.Value = "X_"
End If
Loop While Not gef Is Nothing
End Sub
Gruß
Heinz