Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1492to1496
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeile ausschneiden und verschieben

Zeile ausschneiden und verschieben
25.05.2016 16:21:57
Michael
Hallo Zusammen,
ich habe eine Statusliste (Zwei Tabellenblätter: Statusliste & Archiv). Sobald ein Status (eine Zeile) in der letzten Zelle (Spalte H) den Status erledigt erhält (trage ich ein oder Dropdown), dann soll diese Zeile ausgeschnitten werden und auf das Tabellenblatt Archiv übertragen und nach der letztbeschriebenen Zeile eingefügt werden. Die Zeile in der Statusliste soll nicht leer sein, sondern die anderen Zeilen einfach aufrutschen.
Ist sowas überhaupt möglich?
Gruß & dank
Michael

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeile ausschneiden und verschieben
25.05.2016 16:48:39
UweD
Hallo
das geht so...
- Rechtsclick auf den Tabellenblattreiter
- Code anzeigen
- Diesen Code dort reinkopieren

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Fehler
Dim TB1, TB2
Dim SP%, ZE&, LR&
ZE = 2 'wegen Überschrift
If Not Intersect(Range("H:H"), Target) Is Nothing _
And Target.Row >= ZE Then
Set TB1 = Sheets("Statusliste")
Set TB2 = Sheets("Archiv")
SP = 1 'Spalte A
If Target = "erledigt" Then
LR = TB2.Cells(Rows.Count, SP).End(xlUp).Row 'letzte Zeile der Spalte
TB1.Rows(Target.Row).Copy TB2.Rows(LR + 1)
Application.EnableEvents = False
TB1.Rows(Target.Row).Delete xlUp
End If
End If
Err.Clear
Fehler:
If Err.Number  0 Then MsgBox "Fehler: " & _
Err.Number & vbLf & Err.Description: Err.Clear
Application.EnableEvents = True
End Sub

Gruß UweD
Über Rückmeldungen würde ich mich freuen

Anzeige
AW: Zeile ausschneiden und verschieben
25.05.2016 16:50:16
Werner
Hallo Michael,
der Code gehört ins Change Ereignis des Blattes Statusleiste.
Rechts klick auf den Tabellenblattreiter - Code anzeigen - Code ins Codefenster Kopieren.
Ist nicht getestet.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim loLetzte As Long
If Target.Column = 8 Then
If Target.Value = "erledigt" Then
loLetzte = Sheets("Archiv").Cells(Rows.Count, 1).EndxlUp.Row + 1
Target.EntireRow.Copy Sheets("Archiv").Cells(loLetzte, 1)
Target.EntireRow.Delete
End If
End If
End Sub
Gruß Werner

AW: Zeile ausschneiden und verschieben
25.05.2016 17:09:09
Michael
Vielen Dank euch - werde beides morgen test.

Anzeige
AW: Zeile ausschneiden und verschieben
25.05.2016 19:59:05
Werner
Hallo Michael,
kleine Änderung, hatte das Cancel vergessen und vor allem aus Versehen .End(xlUp).Row vergessen zu klammern.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim loLetzte As Long
Cancel = True
If Target.Column = 8 Then
If Target.Value = "erledigt" Then
loLetzte = Sheets("Archiv").Cells(Rows.Count, 1).End(xlUp).Row + 1
Target.EntireRow.Copy Sheets("Archiv").Cells(loLetzte, 1)
Target.EntireRow.Delete
End If
End If
End Sub
Gruß Werner

194 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige