Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Zeile in anderes Blatt verschieben
#1
Hallo @all,

folgende Herausforderung.

Wie es sein soll: Wenn im Tabellenblatt1 in der Spalte K ein "x" gesetzt wird, soll sich die komplette Zeile in ein anderes Tabellenblatt (Archiv) verschieben.
Wie es ist: Nur leider wird nicht nur die Spalte K sondern das ganze Tabellenblatt angesprochen. Das heißt, egal wo ich ein "X" setze, verschiebt sich automatisch die Zeile in der das "x" irgendwo gesetz wurde.
Das soll so nicht sein. Siehe Code:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)

  If Target.Count = 1 Then

    If Target.Row > 3 Then

      If Target.Value = "x" Then

        Target.EntireRow.Copy Worksheets("Archiv").Cells(Rows.Count, 11).End(xlUp).Offset(1, -10)

        Target.EntireRow.Delete

      End If

    End If

  End If

End Sub
Wo steckt der Fehler und wer kann mir helfen?

Grüße Stefan

Interpunktion und Orthographie dieses Textes sind frei erfunden.
Eine Übereinstimmung mit aktuellen oder ehemaligen Regeln wäre rein zufällig und ist nicht beabsichtigt.

Grüße, StefanB
Antworten Top
#2
Hallo Stefan,

Code:
Private Sub Worksheet_Change(ByVal Target As Range)

  If Target.Count = 1 Then

    If Target.Row > 3 And Target.Column = 11 Then

      If Target.Value = "x" Then

        Target.EntireRow.Copy Worksheets("Archiv").Cells(Rows.Count, 11).End(xlUp).Offset(1, -10)

        Target.EntireRow.Delete

      End If

    End If

  End If

End Sub
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • StefanB
Antworten Top
#3
Klasse, Danke !! 19

Interpunktion und Orthographie dieses Textes sind frei erfunden.
Eine Übereinstimmung mit aktuellen oder ehemaligen Regeln wäre rein zufällig und ist nicht beabsichtigt.

Grüße, StefanB
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste