Hallo Steffi,
Ich hab das jetzt mal ausprobiert. Leider habe ich auf diesem
rechner noch kein XL2007 sondern noch 2000.
ich habe deshalb die rows.count wieder mit durch 65536
ersetzt. Wenn das so richtig war ?-)
Ist schon okay, ich habe es mir halt für mich so angewöhnt gleich so zu schreiben damit es auch in XL2007 läuft falls ich das mal haben sollte.
Tut mir sehr leid wenn dich das irritiert hat:frowning:
Private Sub worksheet_change(ByVal target As Range)
If target.Columns 8 Then Exit Sub
If target.Cells.Count > 1 Then Exit Sub
Dim loletzte As Long
If target.Value = „0“ Then
With Worksheets(„tabelle 2“)
loletzte = IIf(IsEmpty(.Range(„A65536“)),
.Range(„A65536“).End(xlUp).Row + 1, 65536)
target.EntireRow.Cut Destination:=.Cells(loletzte, 1)
End With
End If
End Sub
läuft aber nicht 
Das ist schlecht, aber geht das auch genauer, was genau passiert bzw. passiert nicht?
ich hab das jetzt so verstanden, dass ich
in Spalte h (also 8) „erledigt“ schreibe und dann die zeile
eigentlich ausgeschnitten werden sollte und dann würde es in
der tabelle 2 erscheinen?
Richtig, mein Code macht das auch *denk*. In deinem prüfst du die geänderte Zelle=target auf
If target.Value = „0“ Then
Wenn ich dich richtig verstanden habe müßte es heißen:
If Target.Value = „erledigt“ Then
Ich sehe an deinem Code daß du ihn frei Hand geschrieben hast und nicht aus dem Editor kopiert hast. Mach das nicht, kommen nur zusätzliche Probleme mit der Schreibweise hinzu.
Excel ist es manchmal völlig wurscht ob etwas groß oder klein geschrieben ist, manchmal allerdings ist das ein Riesenunterschied.
tabelle 2 gibt es normalerweise nicht, es heißt
Tabelle2
dann mache ich bestimmt beim einfügen des makros etwas falsch?
Ich habe mit der rechten maustaste auf das tabellenblatt „code
anzeigen“ geöffnet und da das makro eingefügt. Wie gesagt ich
habe 0erfahrung mit makros. Die „dinger“ die ich ausprobiert
habe, haben hierüber funktioniert!
In Excel gibt es meist mehrere Wege etwas zu tun, ich „arbeite“ nur mit Alt+F11, aber dein Weg ist genauso okay. Wichtig ist, wenn du die Saplte H von Tabelle1 durch diesen Code überwachen willst ob jmd „erledigt“ hineinschreibt, daß der Code im Editor auch im Codemodul von Tabelle1 steht.
Und, ich käm nie auf den Gedanken
Private Sub worksheet_change(ByVal target As Range)
per Hand zu schreiben, ich doppelklicke im Editor auf z.B. Tabelle1, wähle in der Mitte worksheet aus und dann rechts Change, dann bastelt mir Vba
Private Sub Worksheet_Change(ByVal Target As Range)
Gruß
Reinhard