Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1268to1272
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 einer Ergebnisliste

Filtern einer Ergebnisliste
André
Hallo zusammen,
ich lasse über eine Datenverbindung abfragen, für welche Zeiträume bestimmte Daten zur Verfügung stehen. Aus den verfügbaren Zeiträumen möchte ich dann per Auswahlliste für die nächste Abfrage selektieren, welche Daten abgerufen werden.
Wenn ich die Abfrage durchführe, erhalte ich Ergebnisse wie folgt in einer Spalte untereinander:
2011m02
2011m02d12
2011m02d13
2011m02d14
2011m02d15
2011m02d16
2011m02d17
2011m02d18
2011m02d19
2011m02d20
2011w08
2011m02d21
2011m02d22
2011m02d23
2011m02d24
2011m02d25
2011m02d26
2011w09
2011m02d27
2011m02d28
2011m03d01
2011m03d02
2011m03d03
2011m03d04
2011m03d05
2011m03d06
2011w10
2011m03d07
2011m03d08
2011m03d09
2011m03d10
2011m03d11
2011m03d12
2011w11
2011m03
2011m03d13
2011m03d14
Da der Zeitraum der Abfrage immer ein Monat ist, will ich ausschliesslich die Werte mit Jahr und Monat (z.B. 2012m04) in eine weitere Liste kopieren. Alle Werte die einen Tag (2012m04d03) oder eine Woche (2012w18) enthalten, sollen verworfen werden. Die Liste soll dann keine doppelten Werte enthalten.
Ich habe mich dem Problem mit dem Verteilen des Inhaltes auf mehrere Zellen bereits genähert, aber das erscheint mir als Bastellösung und hat mich auch nicht ans Ziel gebracht. Würde mich freuen wenn jemand einen Tipp für mich hat, wie ich das Problem eleganter lösen kann.
Schon mal danke, und ein schönes Wochenende!

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
etwas pragmatisch...aber geht
06.07.2012 17:33:49
silex1
Hallo,
Arbeitsblatt mit dem Namen 'Tabelle2'
 ABC
12011m02 2011m02
22011m02d12 2011m03
32011m02d13 #ZAHL!
42011m02d14 #ZAHL!
52011m02d15 #ZAHL!
62011m02d16 #ZAHL!
72011m02d17 #ZAHL!
82011m02d18 #ZAHL!
92011m02d19  

ZelleFormel
C1{=INDEX($A:$A;KKLEINSTE(WENN((TEIL($A$1:$A$100;5;1)="m")*(LÄNGE($A$1:$A$100)=7);ZEILE($1:$100));ZEILE(A1)))}
Achtung, Matrixformel enthalten!
Die geschweiften Klammern{} werden nicht eingegeben.
Verlassen Sie den Zelleneditor mit Strg+Shift + Enter, statt Enter alleine.
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg

VG René
Anzeige
AW: etwas pragmatisch...aber geht
10.07.2012 13:52:00
André
Hallo René,
vielen Dank, ich bin nun ein ganzes Stück weiter gekommen.
Das Filtern habe ich der Übersichtlichkeit halber in mehrere Schritte unterteilt:
1. Spalte enthält die abgerufenen Daten
2. Alle Werte aus Spalte 1 kopieren, die mit 20 beginnen (um die XML-Strings zu entfernen): =WENN((TEIL(A4;1;2)="20");A4;"")
3. Spalte: Inhalt aus zweiter kopieren, wenn "m" enthalten ist: =WENN((TEIL(B4;5;1)="m");B4;"")
4. Spalte: Inhalt aus dritter Spalte kopieren, wenn kein "d" enthalten ist: =WENN((TEIL(C4;8;1)="d");"";C4)
In der vierten Spalte habe ich nun genau die Werte ich ich brauche. Nun will ich diese in einer weiteren Spalte sortieren, und die Leerzeilen entfernen. Wie bekomme ich das hin, möglichst ohne VBA oder eine Pivot Tabelle dafür zu nutzen?
BEREICH.VERSCHIEBEN hat mich (noch) nicht weitergebracht, weil bei ANZAHL2 auch die Zellen mitgezählt werden, die nur die Formel enthalten.
Anzeige
AW: etwas pragmatisch...aber geht
10.07.2012 14:43:29
silex1
Hallo,
geht mit der selben Formel von mir.
Arbeitsblatt mit dem Namen 'Tabelle1'
 AB
12011m042011m04
2 2011m02d13
32011m02d132011m02d14
42011m02d142011m02d15
52011m02d152011m02d16

ZelleFormel
A2=WENN(D2="";"")
B1{=INDEX($A:$A;KKLEINSTE(WENN($A$1:$A$100>"";ZEILE($1:$100));ZEILE(A1)))}
Achtung, Matrixformel enthalten!
Die geschweiften Klammern{} werden nicht eingegeben.
Verlassen Sie den Zelleneditor mit Strg+Shift + Enter, statt Enter alleine.

Allerdings kannst Du die Werte nicht sortieren. Dazu müsstest Du die Strings zerlegen, in jede Spalte einen relevanten Teil. Dann sortieren.
VG René
Anzeige
AW: etwas pragmatisch...aber geht
10.07.2012 15:25:34
André
Hallo René,
die Sortierung habe ich nun doch mittels Pivot-Tabelle vorgenommen, da ich es nicht hinbekommen habe, Dein Beispiel nachzuvollziehen. Das Aktualisieren der Pivot-Tabelle habe ich an den Code für die Datenabfrage angehängt, damit ist das Problem gelöst.
Dennoch vielen Dank!
AW: Filtern einer Ergebnisliste
06.07.2012 17:34:19
mas
Hallo Andre,
ich würde es wie folgt machen:
Schritt 1:
Filtern: enthält nicht "d" und enthält nicht "w"
Das Ergebnis in ein neues Blatt kopieren
Und dann den "Spezialfilter" ohne Duplikate
Einfach das Makro aufzeichnen, dann hast den Code
Selection.AutoFilter
Columns("A:A").AdvancedFilter Action:=xlFilterInPlace, Unique:=True
mas
Anzeige
AW: Filtern einer Ergebnisliste
10.07.2012 09:29:03
André
Vielen Dank, ich werde beide Lösungen testen.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige