ich bin schon eine Weile auf der Suche und wäre unglaublich froh, wenn mir hier eine/r helfen könnte.
Folgendes Problem habe ich:
Ich habe zwei Tabellenblätter. Tabellenblatt 1 (Export) enthält Informationen und Daten, Tabellenblatt 2 (Auszug) ist leer. Zeile 1 ist in beiden Tabellenblättern gleich.
Sobald in Spalte I des Tabellenblattes 1 der Wert "unknown" oder "unavailable" auftaucht, soll die Zeile mit diesem Wert in Tabellenblatt 2 kopiert werden. Zeilen ohne diese Werte sollen nicht kopiert werden. Zusätzlich umfasst Tabellenblatt 1 ca. 2.500 Einträge - dies wäre der Bereich, der abgedeckt werden sollte.
Ich dank dir schon jetzt so sehr.
Vielen Dank und einen schönen Abend euch noch.
22.04.2019, 19:13 (Dieser Beitrag wurde zuletzt bearbeitet: 22.04.2019, 19:14 von Hilfesuchender1512.)
Das habe ich schon versucht - wichtig wäre hier vielleicht noch die Information, dass ein einfach Filtern zwar möglich wäre, aber ein automatisierter Vorgang einfacher. Parallel zu diesem Befehl muss, sobald ein Wert in Spalte A des Tabellenblattes 2 gleich einem Wert in Spalte A Tabellenblatt 3 ist rot hinterlegt werden.
Dies wird durch eine bedingte Formatierung möglich sein, richtig?
eine einfache Methode wäre, die Daten entsprechend zu filtern. Dann kannst Du sie einfach kopieren und in der anderen Tabelle einfügen. Dafür könnte man auch ein kleines Makro schrieben, im Prinzip so:
Code:
Sub Makro2()
'Spalte I als letzte Spalte festlegen
Const iCol As Integer = 9
'Variable fuer letzte belegte Zeile
Dim iRow As Integer
'Letzte belegte Zeile anhand Spalte I festlegen
iRow = Cells(Rows.Count, 9).End(xlUp).Row
'Mit dem Bereich A1 bis I.. letzte belegte Zeile
With Range(Cells(1, 1), Cells(iRow, iCol))
'Autofilter setzen (ggf. code erweitern und pruefen, ob schon gesetzt)
.AutoFilter
'Nach SPalte I filtern
.AutoFilter Field:=9, Criteria1:= _
"=*unavailable*", Operator:=xlOr, Criteria2:="=*unknown*"
'gefilterte Daten nach Tabelle 2 Zelle A1 kopieren
.Copy Sheets("Tabelle2").Range("A1")
'Autofilter aufheben
.AutoFilter
'Ende Mit dem Bereich A1 bis I.. letzte belegte Zeile
End With
End Sub
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Hallöchen,
Habe gerade anhand Günters Tabellenausschnitt gesehen, dass Deine Daten bis Spalte J gehen. Dann musst Du in meinem Code zum Kopieren Die Spalte mit 10 definieren.
Der Vorschlag von Jörg mit PowerQuery würde natürlich auch mein Makro ganz gut ersetzen, damit wird ja auch eine Kopie der Daten angelegt. :19:
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)