Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Wenn erledigte dann Daten verschieben

Wenn erledigte dann Daten verschieben
28.06.2019 14:58:55
Seiler
Hallo Ihr Lieben, könnt Ihr mir helfen? Ich möchte bei meiner Pendenzenliste ein wenig automatisierung hinbringen doch es gelingt mir nicht. Die Tabelle hat underanderm auch noch andere Makros die ich selber nicht gemacht habe.
Mein Ziel: Wenn in der Spalte Status auf erledigt umgestellt wird, dann soll der Datensatz D-I in eine zweite Tabelle in eine neue Arbeitsmappe verschoben werden und die leere zeile gelöscht werden.
Beim Status in Arbeit oder offen soll nichts passieren.
Kann mir hierbei jemand helfen?
Merci
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wenn erledigte dann Daten verschieben
28.06.2019 15:05:14
Torsten
Ohne die Datei zu kennen, eher nicht. Keiner weiss, wie die aussieht.
Gruss Torsten
AW: Wenn erledigte dann Daten verschieben
28.06.2019 15:06:05
Rainer
Hallo Merci,
ohne Datei könnte das schwierig werden, weil außer dir keiner weiß was die anderen Makros machen und wo sich die Spalte "Status" befindet?
Gruß, Rainer
AW: Wenn erledigte dann Daten verschieben
29.06.2019 10:14:43
Werner
Hallo,
wie schon angemerkt fehlen Infos bzw. eine Besipielmappe.
Hier mal ein Beispiel.
Von Tabelle1 (Tabelle mit den nicht erledigten Daten) werden die ensprechenden Daten in Tabelle2 (Tabelle mit den erledigten Daten) kopiert und die Zeile in Tabelle1 wird gelöscht.
Hier bin ich davon ausgegangen, dass das "erledigt" in Spalte I erfasst wird.
Wenn das in eine andere Excel Mappe soll, dann muss die entweder ständig geöffnet sein, oder aber sie muss jedesmal wenn "erledigt" in Spalte I eingetragen wird, geöffnet werden.
Private Sub Worksheet_Change(ByVal Target As Range)
'hier wird Spalte I = 9 angesprochen
'das ist die Spalte in der erledigt
'erfasst wird (ggf. ändern)
If Target.Column = 9 Then
If Target.Count = 1 Then
If Target = "erledigt" Then
Application.ScreenUpdating = False
Range("D" & Target.Row & ":I" & Target.Row).Copy
With Worksheets("Tabelle2")
loLetzte = .Cells(.Rows.Count, "A").End(xlUp).Offset(1).Row
.Range("A" & loLetzte).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End With
Rows(Target.Row).Delete
End If
End If
End If
End Sub
Das ist ein Event-Makro und muss ins Codemodul von der Tabelle mit den "nicht erledigten" Daten.
Rechtsklick auf den Tabellenblattreiter - Code anzeigen - Code rechts ins Codefenster kopieren.
Gruß Werner
Gruß Werner
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Daten verschieben bei erledigten Aufgaben in Excel


Schritt-für-Schritt-Anleitung

Um in deiner Excel-Pendenzenliste die Zeilen zu verschieben, wenn der Status auf "erledigt" gesetzt wird, kannst du ein einfaches VBA-Makro verwenden. Hier sind die Schritte, um dies umzusetzen:

  1. Öffne deine Excel-Datei.

  2. Rechtsklicke auf den Tabellenblattreiter der Tabelle, die die „nicht erledigten Daten“ enthält (z. B. "Tabelle1").

  3. Wähle "Code anzeigen" aus dem Kontextmenü.

  4. Füge den folgenden VBA-Code in das Codefenster ein:

    Private Sub Worksheet_Change(ByVal Target As Range)
        'hier wird Spalte I = 9 angesprochen
        'das ist die Spalte in der erledigt erfasst wird (ggf. ändern)
        If Target.Column = 9 Then
            If Target.Count = 1 Then
                If Target.Value = "erledigt" Then
                    Application.ScreenUpdating = False
                    Range("D" & Target.Row & ":I" & Target.Row).Copy
                    With Worksheets("Tabelle2")
                        loLetzte = .Cells(.Rows.Count, "A").End(xlUp).Offset(1).Row
                        .Range("A" & loLetzte).PasteSpecial Paste:=xlPasteValues
                    End With
                    Rows(Target.Row).Delete
                    Application.CutCopyMode = False
                    Application.ScreenUpdating = True
                End If
            End If
        End If
    End Sub
  5. Schließe den VBA-Editor und gehe zurück zu deiner Excel-Datei.

  6. Teste das Makro, indem du den Status einer Aufgabe auf "erledigt" änderst. Die entsprechende Zeile sollte nun in „Tabelle2“ verschoben werden.


Häufige Fehler und Lösungen

  • Fehler: Das Makro funktioniert nicht.

    • Lösung: Stelle sicher, dass du das Makro im richtigen Tabellenblatt eingefügt hast. Es muss im Code-Modul der Tabelle mit den nicht erledigten Daten sein.
  • Fehler: Die Zeile wird nicht gelöscht.

    • Lösung: Überprüfe, ob der Status genau als „erledigt“ eingegeben wird. Achte auf Groß- und Kleinschreibung.
  • Fehler: Daten werden nicht in die zweite Tabelle verschoben.

    • Lösung: Stelle sicher, dass „Tabelle2“ existiert und der Name exakt übereinstimmt.

Alternative Methoden

Falls du keine VBA-Makros verwenden möchtest, kannst du auch die Filterfunktion in Excel nutzen, um erledigte Aufgaben manuell zu verschieben.

  1. Filtern: Aktiviere den Autofilter in deiner Pendenzenliste.
  2. Filtern nach Status: Wähle "erledigt" aus der Status-Spalte.
  3. Kopieren und Einfügen: Kopiere die gefilterten Zeilen und füge sie in die zweite Tabelle ein.
  4. Löschen: Lösche die gefilterten Zeilen in der ersten Tabelle.

Diese Methode ist weniger automatisiert, bietet dir aber eine einfache Möglichkeit, erledigte Aufgaben zu verschieben.


Praktische Beispiele

Angenommen, du hast eine Pendenzenliste wie folgt:

Aufgabe Status
Aufgabe 1 offen
Aufgabe 2 erledigt
Aufgabe 3 in Arbeit

Wenn du bei "Aufgabe 2" den Status auf "erledigt" änderst, wird diese Zeile in „Tabelle2“ verschoben.

In „Tabelle2“ könnte das Ergebnis so aussehen:

Erledigte Aufgaben
Aufgabe 2

Tipps für Profis

  • Backup erstellen: Bevor du mit VBA arbeitest, erstelle ein Backup deiner Excel-Datei, um Datenverlust zu vermeiden.
  • Benutzerdefinierte Status: Du kannst die Statuswerte anpassen, um mehr Optionen wie „in Bearbeitung“ oder „abgebrochen“ zu integrieren.
  • Outlook-Integration: Wenn du auch Outlook nutzt, kannst du ähnliche Automatisierungen einrichten, um erledigte Aufgaben oder Mails automatisch zu verschieben.

FAQ: Häufige Fragen

1. Wie kann ich das Makro anpassen, wenn ich eine andere Spalte für den Status benutze? Ändere die Zahl in If Target.Column = 9 Then auf die entsprechende Spaltennummer deiner Status-Spalte.

2. Kann ich das Makro für mehrere Tabellen verwenden? Ja, du musst jedoch das Makro in das Code-Modul jeder Tabelle einfügen, die du automatisieren möchtest.

3. Wie kann ich erledigte Aufgaben in Outlook automatisch ausblenden? Du kannst in Outlook Regeln erstellen, um erledigte Aufgaben oder Mails automatisch auszublenden oder in separate Ordner zu verschieben.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige