Zurückkopieren einer Zeile in das Ursprungsblatt
09.08.2017 15:07:13
Paul
ich stehe derzeit vor einem Problem, das für euch sicherlich keins darstellen sollte. Ich habe im Tabellenblatt X folgenden Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim loLetzte1 As Long
With Worksheets("Abgeschlossene Aufgaben")
loLetzte1 = .Cells(.Rows.Count, 2).End(xlUp).Row + 1
End With
If Target.Count > 1 Then Exit Sub
If Target.Column = 5 Then
If Target.Row > 1 Then
If Target.Value = "Erledigt" Then
If Target.Offset(, 1) = "" Then
MsgBox "Wann erledigt?"
Target = ""
Target.Offset(, 1).Select
Else
Target.EntireRow.Copy Worksheets("Abgeschlossene Aufgaben").Rows(loLetzte1)
Target.EntireRow.Delete shift:=xlUp
Worksheets("Abgeschlossene Aufgaben").Cells(loLetzte1, 7) = ActiveSheet.Name
Worksheets("Abgeschlossene Aufgaben").Cells(loLetzte1, 4).Copy
Worksheets("Abgeschlossene Aufgaben").Cells(loLetzte1, 7).PasteSpecial _
xlFormats
Application.CutCopyMode = False
End If
End If
End If
End If
End Sub
Sobald ich in Spalte 5 "Erledigt" reinschreibe und in Spalte 6 das Datum, wann es erledigt wurde, drin steht, wird die komplette Zeile in das Arbeitsblatt "Abgeschlossene Aufgaben" kopiert.Im Arbeitsblatt "Abgeschlossene Aufgaben" wird in Spalte 7 der Name des Arbeitsblattes angezeigt, aus dem die gesamte Zeile kopiert wurde. Außerdem ist dort folgender Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim loLetzte As Long
Dim strBlattname As String
If Target.Count > 1 Then Exit Sub
If Target.Column = 5 Then
If Target.Row > 1 Then
If Target.Value "Erledigt" Then
strBlattname = Worksheets("Abgeschlossene Aufgaben").Cells(Target.Row, 7)
loLetzte = Worksheets(strBlattname).Cells(Rows.Count, 1).End(xlUp).Row + 1
Target.EntireRow.Copy Worksheets(strBlattname).Rows(loLetzte)
Worksheets(strBlattname).Cells(loLetzte, 5).ClearContents
Worksheets(strBlattname).Cells(loLetzte, 6).ClearContents
Worksheets(strBlattname).Cells(loLetzte, 7).Delete
Target.EntireRow.Delete shift:=xlUp
End If
End If
End If
End Sub
Sobald ich das "Erledigt" in Spalte 5 lösche, kopiert er die Zeile in das Ursprungsblatt zurück. Das funktioniert soweit gut, jedoch habe ich Schwierigkeiten, die zurückkopierte Zeile in dem Ursprungsblatt zu finden.´Gibt es eine Möglichkeit, dass beim Zurückkopieren der Zeile aus "Abgeschlossene Aufgabe", diese in dem Ursprungsblatt kenntlich gemacht wird? Zum Beispiel, dass der Cursor automatisch in der Zeile landet, wohin die Zeile kopiert wurde, oder die ganze Zeile gelb markiert wird?
Vielen Dank für eure Hilfe.
Gruß
Paul