Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1484to1488
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Filtern nach zwei Spalten - ODER-Verknüpfung

Filtern nach zwei Spalten - ODER-Verknüpfung
29.03.2016 10:41:31
Karin
Guten Morgen,
Ich habe ein Makro erstellt, dass eine Tabelle erstellt und verschiedene Reiter mit den notwendigen Daten befüllt.
Bei einem Reiter benötige ich einen Filter, der in SPalte 3 alle Werte anzeigt die das Wort "Tier" enthalten (egal an welcher Stelle) Oder in Spalte 5 das gleiche Wort enthalten (oder in beiden Spalten)
Das Problem beim normalen Filter ist ja, dass wenn ich in SPalte 3 und 5 nach "Tier" suche, es mir nur diese anzeigt, in denen beides gleichzeitig vorkommt.
Ich hoffe ihr versteht was ich meine.
Vielen Dank im Voraus
Karin

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: filtere über eine Hilfsspalte ...
29.03.2016 11:16:13
...
Hallo Karin,
... in der Hilfsspalte ermittelst Du mit einer Formel, ob die ODER-Verknüpfung bzgl. Deiner Bedingungen in den entsprechenden Zeile der zwei Spalten eingehalten ist. Die Hilfsspalte filtertst Du dann einfach nach dessen Ergebnis.
Gruß Werner
.. , - ...

AW: Filtern nach zwei Spalten - ODER-Verknüpfung
29.03.2016 11:49:54
Karin
Guten Tag,
mit dem Spezialfilter tue ich mir extrem schwer. Zumal die Tabelle ja über ein Makro erstellt wird und bis Spalte 35 reicht.
Ist es vielleicht möglich, über VBA zu sagen:
Wenn in SPalte 3 oder SPalte 5 das Wort "Tier" enthalten ist (egal an welcher Stelle), dann, komplette Zeile (also alle anderen SPalten auch) beibehalten, ansonsten, komplette Zeile löschen
Das ganze soll erst ab Zeile 2 gelten, da sonst die Überschriften verloren gehen.
Das wäre für mich einfacher als ein Filter.
Gruß

AW: Filtern nach zwei Spalten - ODER-Verknüpfung
29.03.2016 12:03:09
Daniel
Hi Karin
ab Excel 2007 löst man das Problem "Zeilen löschen mit Bedingung" am besten über die Funktion Daten - Datentools - Duplikate entfernen
das geht dann konkret so:
1. denke dir eine Formel aus, welche alle Zeilen die gelöscht werden sollen mit 0 kennzeichnet und die die stehen bleiben sollen mit der Zeilennummer.
in deinem Fall könnte das die Formel sein:
=Wenn(IstZahl(Finden("Tier",C2&E2));Zeile();0)

schreibe diese Formel in einer Hifsspalte am Tabellenende von der 2. Zeile bis zur letzen befüllten
2. schriebe in die Zeile 1 der Hilfsspalte (Überschrift) ebenfalls die 0
3. wende auf die ganze Tabelle das Duplikate-Entfernen an, mit der Hilfsspalte als Kriterium und der Option "keine Überschrift" (keine Angst, die Überschriftenzeile wird trotzdem nicht gelöscht)
das ganze geht natürlich auch als Makro:
Sub ZeilenLöschen()
With ActiveSheet.UsedRange
With .Columns(.Columns.Count + 1)
.FormulaR1C1 = "=IF(ISNUMBER(FIND(""Tier"",RC3&RC5)),ROW(),0)"
.Cells(1, 1).Value = 0
.EntireRow.RemoveDuplicates .Column, xlNo
.ClearContents
End With
End With
End Sub
das Prinzip ist sozusagen eine Standardmethode zum Löschen von Zeilen mit Bedinung.
Wenn sich die Bedinung ändern sollten, brauchst du nur die Formel zu ändern, den Rest des Codes kannst du immer verwenden.
Gruß Daniel

Anzeige
AW: Filtern nach zwei Spalten - ODER-Verknüpfung
29.03.2016 14:45:39
Karin
Hallo Daniel,
Vielen Dank!
Aber betrifft das mein Anliegen?
Ich möchte ja, dass wenn in Spalte 3 und in Spalte 5 Tier vorkommt, die komplette Zeile beibehalten wird, nicht gelöscht.
Auch wenn in SPalte 3 zb "Haus Tier Baum" steht, soll die komplette Zeile bleiben.
Grüße
Karin

AW: Filtern nach zwei Spalten - ODER-Verknüpfung
29.03.2016 15:13:19
Daniel
ja, meine Antwort betrifft dein Anliegen
mein Code löscht alle Zeilen, bei denen weder in Spalte C noch in in Spalte E das Wort "Tier" vorkommt.
sobald in der Spalte C oder in der Spalte E der jeweiligen Zeile das Wort "Tier" auch als Teil des Textes steht, bleibt die Zeile stehen.
dh steht in Spalte C "Hund Katze Maus" und in Spalte E "Schwein Kuh Pferd" wird die Zeile gelöscht
steht in Spalte C jedoch "Hund Tier Maus", bleibt die Zeile stehen, egal was in Spalte E steht.
auch wenn in Spalte E dann "Schwein Tier Pferd" steht, bleibt die Zeile stehen, egal was in Spalte C steht.
Auch wenn in beiden Spalten "Tier" vorkommt (dh in Spalte C steht "Hund Tier Maus" und in Spalte E steht "Schwein Tier Pferd") bleibt die Zeile stehen.
nur wenn in WEDER in Spalte C NOCH in Spalte E das wort "Tier" innerhalb des Textes vorkommt, wird die Zeile gelöscht.
Gruß Daniel

Anzeige
AW: Filtern nach zwei Spalten - ODER-Verknüpfung
29.03.2016 15:51:11
KlausF
Hallo Karin,
Sub ZeilenLoeschen()
Dim strSearch As String
Dim txt1 As String
Dim txt2 As String
Dim i As Long
Dim lngLast As Long
lngLast = ActiveSheet.Range("C:E").Find("*", searchdirection:=xlPrevious).Row
strSearch = "Tier"
Application.ScreenUpdating = False
For i = lngLast To 2 Step -1
txt1 = Range("C" & i).Value
txt2 = Range("E" & i).Value
If InStr(1, txt1 & txt2, strSearch) > 0 Then
Else
Rows(i).EntireRow.Delete
End If
Next i
Application.ScreenUpdating = True
End Sub
Gruß
Klaus

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige