Hallo,
Ich habe zwei Tabellen, jeweils sechsspaltig.
Die erste enthält die Daten "aller Kunden". 200000 Datenzeilen.
Die zweite enthält die Daten "Problemkunden" 50000 Datenzeilen.
Ich möchte nun unkompliziert und sicher eine Tabelle "einwandfreie Kunden" produzieren.
Da mich VBA schon mal zur Verzweiflung gebracht hat, soll es ohne vba ablaufen.
Office - Word, Excel und Co. 9.753 Themen, 41.598 Beiträge
Das Stichwort zu Excel und deinem Problem wäre hier die Funktion zählenwenn()
Wirf mal google an, da gibt es viele Beispiele.
Da findest du bestimmt etwas, was mit deinen Tabellen harmoniert.
Gruß
joe
Funktion zählenwenn()
Da werden die Datensätze gezählt, die einem bestimmten Kriterium entsprechen. Und dann?
Gruß, mawe2
Wie sind denn die Kunden gekennzeichnet? Gibt es eindeutige Schlüssel (Kundennummern) in beiden Tabellen?
Welche Excel-Version soll eingesetzt werden?
Prinzipiell ist das eine Aufgabe für ein Datenbankprogramm (wie z.B. Access), es lässt sich aber sicher auch mit Excel lösen.
Gruß, mawe2
Klarer Fall für SVERWEIS. Aber bei 200K würde ich definitiv eine Datenbank verwenden und nicht Excel...
SVERWEIS?
Dann skizzier die Lösung mal bitte ;)
Einfach in der Gesamtliste per SVERWEIS die Kunden ermitteln die in der Problemliste stehen (setzt natürlich eine Spalte mit eindeutigem Schlüssel voraus. Die könnte man sonst hoffentlich aus den anderen Spalten generieren) und die dann im Anschluss raus (z.B. nach WAHR/FALSCH-Rückgabe einer Prüfung mit SVERWEIS sortieren und dann die passenden Zeilen löschen) werfen...
Reicht das schon oder hättest Du gerne mehr Details?
Ich hätte jetzt eine Spalte in der _Gesamtkundenliste eingefügt. In dieser Spalte via SVErweis in der Problemkundenliste gesucht und beu übereinstimmung ein Kennzeichen gesetzt.
Anschliessend per "Autofilter" auf alle Zeilen gefilter, die dieses kennzeichen NICHT haben - e voila, schon hab ich alle kunden, die i.O. sind.
Vol 'mit DB gehts trotzdem besser' ker
Dann hätten wir im großen und ganzen den selben Weg gewählt.
per "Autofilter" auf alle Zeilen gefilter, die dieses kennzeichen NICHT habe
Wo finde ich den Autofilter denn unter den aktuellen Excel-Versionen?
mit DB gehts trotzdem besser
Ich würde bei dieser Anzahl definitiv auch zu einer Datenbank greifen ;-)
Gruß
Bor
Beo MSO2010 findest du den "Autofilter" wie alle anderen Filter auch im "Filter" Menü - einfach auf das Kaffefilter/Trichtersymbol im Ribbn klicken, dann kannst du den gewünschten Filter wählen.
Auch ich hab ne Weile gebraucht, is ich das begriffen habe ;)
Volker
Man braucht gar keinen SVERWEIS, man braucht nur den Filter. Aber keinen Autofilter sondern einen, der sich auf eine Liste mit Filterbedingungen bezieht. Und diese Liste ist die Tabelle mit den nicht gewünschten Datensätzen.
Aber das Problem ist ja nun gelöst, also können wir das abhaken.
Gruß, mawe2
Filter [...] der sich auf eine Liste mit Filterbedingungen bezieht.
Das hört sich nach einer sehr eleganten Lösung an :-)
Das hört sich nach einer sehr eleganten Lösung an.
Aber das Problem ist ja nun gelöst, also können wir das abhaken
Warum sollten wir nicht trotzdem noch alternative Lösungsmöglichkeiten diskutieren?
Ich finde das durchaus spannend, zumal man leider oftmals zwar Excel aber eben nicht Access zur Verfügung hat. auch in Unternehmensumgebungen.
"Spezialfilter" ist die genaue Bezeichnung.
Ich habe aber (wie ich weiter oben schon schrieb) keine Vorstellung, ob der bei 200.000 Datensätzen (und 50.000 Datensätzen bei den auszuschließenden Filterkriterien) überhaupt noch sinnvolll arbeitet.
Das Abhaken des Problems habe ich deswegen vorgeschlagen, weil wir uns ja fast alle einig waren, dass bei dieser Größenordnung Access die bessere Wahl ist.
Dass viele kein Access haben (oder nicht nutzen können) ist mir schon klar. Und dass Excel gern als Access-Ersatz genommen wird auch.
Gruß, mawe2
Was du gerne produzieren möchtest, liesse sich in einer DB - auch in Access - deutlih einfacher mache. Im Datenbankbereich heisst das "Outer Join" -
"Zeige mir alle Datensätze aus Tabelle A, die NICHT in Tabelle B sind".
Sorry, für Excel fällt mir gerade kein einfacher Weg ein, das Gewünschte zu erreichen.
Volker
Der Weg in Excel könnte über Filter führen. Ich habe aber keine Ahnung ob die bei 200.000 Zeilen noch sinnvoll funktionieren. Für mich käme hier auch nur Access o.ä. in Frage.
Gruß, mawe2
Hallo,
vielen Dank für Eure Antworten! Die richtige Lösung war der sverweis. Man muß ihm eine wenn-Funktion nachschalten, die, wenn ein Datensatz kein Problemkunde ist, dessen Daten einblendet.
Mit Access gehts sicher noch besser, aber ich wollte den enormen Einarbeitungsaufwand vermeiden.
Danke, Fall erledigt.
<i>Mit Access gehts sicher noch besser, aber ich wollte den enormen Einarbeitungsaufwand vermeiden.</i>
Du httest keinerlei Einarbeitung gebraucht, denn eine Anleitung für das Vorgehen in Access hättest du ebenfalls hier bekommen können.
Kannst du die lösung, die du jetzt hast, mal kurz skizzieren?
Volker