Hallo Holger,
 verzeih bitte die schlechte Formatierung in meinem Post, bin da etwas durcheinander gekommen, hast es aber richtig erkannt.
 
 Ich habe jetzt den Code entsprechend geändert in:
 
 If Target.Column = 10 And Target.Value = "Erledigt" Then
     Range(Worksheets("Offen").Cells(Target.Row, 1), Worksheets(1).Cells(Target.Row, 14)).Cut
     Worksheets("Erledigt").Activate
     lz = Worksheets("Erledigt").Cells(Rows.Count, 1).End(xlUp).Row + 1
     Worksheets("Erledigt").Cells(lz, 1).Activate
     ActiveSheet.Paste
     Worksheets("Offen").Cells(Reihe, 1).EntireRow.Delete
 End If
 
 Vielen Dank dafür :-)
 
 Ich bekomme aber weiterhin die Fehlermeldung: Typen unverträglich.
 Er stoppt immer bei: If Target.Column = 10 And Target.Value = "Erledigt" Then.
 Hat das vielleicht etwas mit der Formatierung zu tun?
 Was ich verschwiegen habe ist, das das Target eine Auswahlliste ist. Kann es vielleicht daran liegen ?
 
 Gruß
 Homer
 
 Holger schrieb am 27.02.2009 10:12:01:
 
 Hallo Homer80,
 ich gehe davon aus, dass die "_" Verbindungszeichen für Zeilen sind, aber die Zeilenwechsel nicht eingefügt wurden, und dass OldRow... ein Punkt vorangestellt werden sollte und in die Zeile davor gehört.
 Allerdings kenne ich keine Eigenschaft "OldRow". Du willst aber vermutlich den Bereich 
 Worksheets(1).Cells(Target.Row, 1), Worksheets(1).Cells(Target.Row, 14)
 ausschneiden. Dazu brauchst du ihn nicht zu markieren.
 Range(Worksheets(1).Cells(Target.Row, 1), Worksheets(1).Cells(Target.Row, 14)).Cut
 genügt.
 Um auf dem Tabellenblatt "Erledigt" die nächste freie Zeile zu finden, kannst du z.B. 
 Worksheets("Erledigt").Activate
 lz = Cells(Rows.Count, 1).End(xlUp).Row+1
 verwenden.
 Gruß
 Holger
 
 
 
 Homer80 schrieb am 26.02.2009 14:24:11:
 
 Hallo,
 ich habe folgenden Code (als Anfänger) geschrieben:
 
 Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
 If Target.Column = 10 And Target.Value = "Erledigt" Then
    Range(Worksheets(1).Cells(Target.Row, 1), _ Worksheets(1).Cells(Target.Row, 14))
    OldRow.Select
    Selection.Cut
    Dim Workshet As Range: Set Workshet = _ Worksheets("Erledigt").Range("A3", "A20000")
    Dim Cell As Range
    Dim counter As Integer: counter = 3
    Dim NewPlace As Range
    For Each Cell In Workshet
     If Cell.Value = "" Then
     Worksheets("Erledigt").Activate
     Worksheets("Erledigt").Cells(counter, 1).Select
         Exit For
     End If
      counter = counter + 1
    Next
    ActiveSheet.Paste
 End If
 End Sub
 
 Ich will damit bezwecken das bei Änderung einer Listbox auf den Eintrag "Erledigt" die betroffene Zeile in das nächste Worksheet verschoben wird.
 
 Ich bekomme jedoch immer den Fehler 13 "Typen unverträglich" bei "If Target.Column...": , wobei die sub aber korrekt ausgeführt wird.
 
 Hat Jemand eine Ahnung woran das liegen könnte ?
 
 Vieln Dank im Voraus
 Homer
 
      |