Excel - Automatisch Zeile in neue Tabelle kopieren, wenn Bedinung erfüllt ist?

4 Antworten

Automatisch Zeile in neue Tabelle kopieren
...
automatisch nach Tabelle 2 übertragen werden

"Übertragen" und "Kopieren" geht mit Formeln überhaupt nicht. Formeln können nur Inhalte oder berechnete Inhalte aus andere Zellen anzeigen, aber sie können niemals andere Zellen oder gar die eigene Zelle ändern.

Wenn Du Inhalte von Zellen ändern willst - was bei "Übertragen", "Kopieren" und "Neu eintragen" der Fall ist - musst Du Makros programmieren.

Funktionieren tut es, aber du müsstest das Skript deinen Bedürfnissen anpassen:

Sub Test()


Dim tabelle1 As Long, tabelle12 As Long, index As Long
Dim letzteSpalte As String

letzteSpalte = "C"

tabelle1 = Cells(Rows.Count, "A").End(xlUp).Row

tabelle12 = Sheets("Tabelle2").Cells(Rows.Count, "A").End(xlUp).Row

For index = tabelle1 To 1 Step -1
    If Range("A" & index).Value = 30 Then
        Range("A" & index & ":" & letzteSpalte & index).Copy Sheets("Tabelle2").Range("A" & tabelle12 + 1)
        tabelle12 = Sheets("Tabelle2").Cells(Rows.Count, "A").End(xlUp).Row
    End If
Next index

End Sub

Die Tabellen müssen richtig benannt sein, falls es nicht der Fall ist und deine letzte Spalte muss angegeben sein.

Das Skript durchsucht alle Zeilen von Spalte A bis (momentan) C nach Werten und prüft, ob in Spalte A der Wert 30 verfügbar ist. Falls dieser Fall zutrifft, wird die Zeile kopiert.

Makros müssen aktiv sein, sonst funktioniert dieses Skript nicht.

Bei Fragen, fragen :)

Deine Wenn-Bedingung führt nur dann zu einer Übernahme der Daten, wenn die Quellzellen einen Wert enthalten.

Bild zum Beitrag

Ohne Deine Datei zu kennen kannst Du eine Übernahme per SVerweis - durch eine Hilfsspalte - der Daten erreichen.

Bild zum Beitrag

 - (Microsoft Excel, Microsoft Office, VBA)  - (Microsoft Excel, Microsoft Office, VBA)
Von Experte Suboptimierer bestätigt

Du kannst in Tabelle 2 einen gefilterten Bereich aus Tabelle 1 anzeigen lassen:

=FILTER(Tabelle1!A2:H20;Tabelle1!G2:G20=1234)

Wenn die Zeilen wirklich fest nach Tabelle 2 geschrieben werden sollen (also auch dort bleiben sollen, wenn sie in Tabelle 1 gelöscht werden), geht das nur mit VBA.