Hallo zusammen,
Problem 1
ich habe eine Excel Liste mit Vereinsdaten(Tabelle1). Ich würde gerne bei einem Datumseintrag in Spalte X die komplette Zeile automatisch nach betätigen von Enter in ein Archivblatt "verstorben" (Bitte nicht abschrecken lassen, das passiert halt leider manchmal) verschieben. Das Archiv hat genau die gleiche Aufteilung wie Tabelle1.
Dazu habe ich folgenden Ansatz:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Bereich As Range
Dim lRow, zRow As Long
lRow = Sheets("Tabelle1").Range("A65536").End(xlUp).Row
zRow = Sheets("verstorben").Range("A65536").End(xlUp).Row + 1
Set Bereich = Range("X2:X160" & lRow) '*** hier eintragen wo das Datum steht
If Not Intersect(Target, Bereich) Is Nothing Then
If IsDate(Target.Value) = True And Target.Value <> "" Then
With Range("A" & Target.Row & ":ZZ" & Target.Row) '*** hier eintragen was kopiert werden soll
.Copy
Sheets("verstorben").Paste Destination:=Sheets("verstorben").Range("A" & zRow)
Application.EnableEvents = False
.Delete shift:=xlShiftUp
End With
End If
End If
Application.EnableEvents = True
End Sub
Das funktioniert auch so weit, allerdings wird die Zeile erst verschoben, wenn ich nach Enter noch mal in die betreffende Zelle klicke.
Zusätzlich würde ich jetzt noch gerne genau den selben Vorgang bei einem Eintrag in Spalte W machen. Nur das dann der Datensatz in das Blatt "ausgetreten" verschoben werden soll.
Kann mir hier jemand weiterhelfen?
Problem 2
sollte das technisch möglich sein, würde ich gerne noch folgendes automatisch machen um Benutzerfehler zu vermeiden.
Ist es möglich, wenn ich in Tabelle1 eine spalte einfüge (Mit Beschriftung in Zelle A), oder eine vorhandene Spalte verschiebe, dass dann diese Änderung der Spalte mit Beschriftung automatisch auch in die beiden Archivblätter "verstorben" und "ausgetreten" eingefügt wird?
Vielen Dank schon mal im Voraus
Excel 2007 und 2010
Gruß
Robert
|