Hallo,
eine kurze FRage,
ich habe eine Große Liste und versuche diese zu Filtern.
Das sieht als kleines beispuel so aus,
Nr. Ort.
1234 FB
7890 XL
1234 SG
1234 PR
7639 SG
Ich möchte nun alle Nr. haben die nicht in Ort FB und XL vorkommen. Würde also Ort FB rausfiltern. Nr. 1234 liegt aber zugleich noch bei zwei anderen Orten. Hier SG und PR. Und diese Zeilen sollen dann auch mit raus. Also ist die Nr. in FB oder XL Vorhanden, fliegt diese komplett aus der Liste mit allen anderen Orten die es dazu evtl. noch gibt.
Bekomme das nur sehr umständlich hin. Und die Liste ist dafür zu Groß.
Ideen?
Danke
Hi,
deine Nummern sind in Spalte A, die Orte in B? Dann schaffe ein Hilfsspalte mit Formel
und filtere nach dieser.
Hallo,
damit hätte ich dann etwa:
A B C
Nr. Ort. Hilfsspalte
1234 FB 1234FB
7890 XL 7890XL
1234 SG 1234SG
1234 PR 1234PR
7639 SG 7639SG
Aber ich sehe noch nicht wie mir das hilft. Wenn 1234 in FB Vorkommt auch alle anderen 1234 zu entfernen.
Wenn ich nun Nummern finden will, die nicht im FB oder XL Vorkommen.
Übrig bleiben dürfte dann am Beispiel nur 7639 in SG
Hi,
ja, ich hatte dich missverstanden - mein Vorschlag passt natürlich nicht.
Allerdings erschließt sich mir auch die zweite Erklärung (noch) nicht ganz. Du schreibst:
Zitat:Wenn 1234 in FB Vorkommt auch alle anderen 1234 zu entfernen.
Was ist, wenn 1234 nicht in FB vorkommt? Bleibt dann diese Zeile ungefiltert und sollen dann die anderen ebenfalls erhalten bleiben?
Oder sollen trotzdem alle weggefiltert werden, die nicht in FB und XL vorkommen?
Vielleicht erklärst du besser an einem realen Beispiel, was du eigentlich erreichen willst. Ich denke, deine Zahlen in Verbindung mit den Buchstabenkombinationen sind reine Platzhalter für dein eigentliches Problem.
Hi
Würde ich mit dieser Hilfsspalte Versuchen.
____|____A___|___B__|_C_|_D_|
1|Filter | | | |
2|FB |XL | | |
3| | | | |
4|Nr. |Ort. | | |
5| 1234|FB | 1| |
6| 7890|XL | 1| |
7| 2000|PR | 0| |
8| 1234|PR | 1| |
9| 7639|SG | 0| |
10| 7890|PR | 1| |
11| 5892|FB | 1| |
12| 1234|SG | 1| |
C5 =ZÄHLENWENNS($B$5:$B$12;$A$2;$A$5:$A$12;A5)+ZÄHLENWENNS($B$5:$B$12;$B$2;$A$5:$A$12;A5) 'nach unten kopieren
Und jetzt nach Spalte C = 0 Filtern
(08.03.2018, 22:43)WillWissen schrieb: [ -> ]Hi,
ja, ich hatte dich missverstanden - mein Vorschlag passt natürlich nicht.
Allerdings erschließt sich mir auch die zweite Erklärung (noch) nicht ganz. Du schreibst:
Was ist, wenn 1234 nicht in FB vorkommt? Bleibt dann diese Zeile ungefiltert und sollen dann die anderen ebenfalls erhalten bleiben?
Oder sollen trotzdem alle weggefiltert werden, die nicht in FB und XL vorkommen?
Vielleicht erklärst du besser an einem realen Beispiel, was du eigentlich erreichen willst. Ich denke, deine Zahlen in Verbindung mit den Buchstabenkombinationen sind reine Platzhalter für dein eigentliches Problem.
Hallo,
richtig das sind nur Platzhalter. Sollte aber gut zeigen was ich meine. Die Datenliste ist um einiges Größer. ca 200.000 zeilen. Und ich möchte wissen, was nicht In bestimmten Orten vorkommt. Also muss alles was bereits vorkommt, rausgefiltert werden.
Kommt 1234 in FB vor, fällt es komplett aus der Liste. egal an welchen orten es sonst noch vorkommt. Gibt es 1234 nicht in FB bleiben alle anderen 1234 erhalten.
(08.03.2018, 23:02)Elex schrieb: [ -> ]Hi
Würde ich mit dieser Hilfsspalte Versuchen.
____|____A___|___B__|_C_|_D_|
1|Filter | | | |
2|FB |XL | | |
3| | | | |
4|Nr. |Ort. | | |
5| 1234|FB | 1| |
6| 7890|XL | 1| |
7| 2000|PR | 0| |
8| 1234|PR | 1| |
9| 7639|SG | 0| |
10| 7890|PR | 1| |
11| 5892|FB | 1| |
12| 1234|SG | 1| |
C5 =ZÄHLENWENNS($B$5:$B$12;$A$2;$A$5:$A$12;A5)+ZÄHLENWENNS($B$5:$B$12;$B$2;$A$5:$A$12;A5) 'nach unten kopieren
Und jetzt nach Spalte C = 0 Filtern
Hallo, ja das könnte ein Ansatz sein. ich Probiere das mal aus. Gäbe es vielleicht auch eine möglichkeit mit Pivot Table?
Hi,
ich denke, dass bei 200.000 Zeilen eine PT nicht (mehr) das erste Mittel der Wahl ist. Ich würde es folgendermaßen filtern:
Arbeitsblatt mit dem Namen 'Tabelle2' |
| A | B | C | D | E |
1 | Nr. | Ort. | | 1234 | FB |
2 | 1234 | FB | x | | |
3 | 7890 | XL | | | |
4 | 1234 | SG | | | |
5 | 1234 | PR | | | |
6 | 7639 | SG | | | |
Zelle | Formel |
C2 | =WENN(UND(A2=$D$1;B2=$E$1);"x";"") |
Verwendete Systemkomponenten: [Windows (32-bit) NT :.00] MS Excel 2013 |
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg |
Wenn die verlangte Kombination vorhanden ist, nach "x" wegfiltern; danach nach Spate A filtern. Falls die Kombi nicht auftritt, brauchst du ja auch nichts weiteres mehr filtern - es bleibt alles beim alten.
@Günter
müßte es nicht "oder" sein
Code:
=WENN(oder(A2=$D$1;B2=$E$1);"x";"")
Gab es Versuche mit "Autofilter"?
Zuerst in Spalte B nach "Fb" und "Xl" filtern, dann alle Codes in Spalte A auslesen. Im dritten Schritt alle Zeilen mit den gefundenen Codes löschen.
mfg
Hallo,
für das gezeigte Beispiel geht:
Code:
Sub F_en()
Dim DD As Object
Set DD = CreateObject("Scripting.Dictionary")
For i = 2 To 6
DD.Item(CStr(Cells(i, 1))) = vbNullString
Next i
With Cells(1).CurrentRegion
.AutoFilter 2, "FB", xlOr, "XL"
ar = .Offset(1).Columns(1).SpecialCells(12)
For Each r In ar
'Debug.Print r
If DD.exists(CStr(r)) Then DD.Remove CStr(r)
Next r
arr = DD.keys
'Debug.Print Join(DD.keys, ", ")
.AutoFilter
.AutoFilter Field:=1, Criteria1:=Array(arr), Operator:=xlFilterValues
.Copy Sheets(2).Cells(1, 1)
.AutoFilter
End With
End Sub
Das Ergebnis wird nach Sheet(2) geschrieben.
mfg