Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1300to1304
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

Bücherliste durchsuchen

Bücherliste durchsuchen
01.03.2013 14:35:31
Oberschlumpf
Hallo Leute
ich komm hier einfach nicht weiter:
https://www.herber.de/bbs/user/84129.xls
Es handelt sich um den Auszug aus einer Bücherliste.
Ich suche nun nach einer Möglichkeit, die Liste mit den vorgegebenen Suchtexten erfolgreich durchsuchen zu können.
Einige VBA-Versuche (die in der Datei nicht enthalten sind, weil noch gar nicht lauffähig) habe ich schon gestartet, aber es klappt noch nicht wirklich.
Ich bleibe immer wieder daran hängen, dass mir nix einfällt, wie ich, bzw der Code wissen kann, welcher Text im Suchtext überflüssig ist, oder welcher Textteil im Suchtext gehört zum Autor, welcher Teil gehört zum Titel?
Vielen Dank schon mal an Diejenigen, die schlauer sind als ich :-)
Ciao
Thorsten

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bücherliste durchsuchen
01.03.2013 15:45:43
EtoPHG
Hallo Thorsten,
Mal ein Versuch ohne VBA.
https://www.herber.de/bbs/user/84131.xls
Je mehr Worte die zu Titel/Autor passen, desto genauer die Trefferquote.
Gruess Hansueli

hier werden sie geholfen :-)
01.03.2013 15:55:36
Oberschlumpf
Hallo Hansueli!
Hey, cool, ich glaub, deine Lösung passt hervorragend.
Ich hab gerad nur wenig Zeit zum Testen, aber die wenigen Versuche passten.
Ich melde mich später noch mal, wenn ich die Originaldatei getestet habe.
Auf jeden Fall aber ist deine Idee vieel besser als meine Versuche.
Danke + Ciao
Thorsten

Anzeige
AW: Bücherliste durchsuchen
02.03.2013 13:34:49
Oberschlumpf
Hi Hansueli
Hmm...dein Bsp funktioniert zwar, aber...
Ich wunderte mich in den Formeln bis eben über BD, sah aber gerad eben erst, dass du ganz viele Hilfsspalten benötigst.
Wie gesagt, grundsätzlich saubere Arbeit von dir - mein Respekt! - nur ich kann diese vielen Hilfsspalten leider nicht gebrauchen...sorry!
Ciao
Thorsten
ach so, auch sorry, dass ich erst jetzt zum richtigen Testen + Antworten komme...

AW: Bücherliste durchsuchen
02.03.2013 02:01:21
Hubert
Hallo Thorsten
hier mal ein Beispiel mit VBA.
ist noch nicht optimal, aber vielleicht auch ein Ansatz für dich.....
https://www.herber.de/bbs/user/84138.xls
Gruß, Hubert

Anzeige
......Datei noch einmal angepasst
02.03.2013 02:33:29
Hubert
Hallo Thorsten
hier noch einmal meine Datei.
Ich habe sie noch ein bißchen angepasst.
Habe die Messageboxen abgeschaltet und das Suchergebnis
etwas angepasst.
https://www.herber.de/bbs/user/84139.xls
Vielleicht hilft es dir weiter.
Schönen Gruß, Hubert

AW: ......Datei noch einmal angepasst
02.03.2013 13:39:39
Oberschlumpf
Hi Hubert
Auch an dich ein großes Danke für die VBA-Idee.
Sie funktioniert, wenn ich z bsp nur Titel oder Autor eingebe.
Wenn ich aber einen von den "Vorgaben" aus meiner Datei, z Bsp "Black Friday von Karin Slaughter" genau so als Suchtext eingebe, dann findet dein Code leider nix.
Und das ist wichtig.
Eine Lösung muss mit den Suchtexten funktionieren, wie sie in der Art verwendet werden, wie in meiner Datei.
Auch sorry an dich, dass meine Antwort etwas länger auf sich warten ließ.
Vieleicht hast du ja noch ne Idee.
Ciao
Thorsten

Anzeige
AW: ......Datei noch einmal angepasst
02.03.2013 23:25:41
Hubert
Hallo Thorsten
verstehe ich nicht ganz. Wieso musst du unbedingt zum Suchen
ganz genau "Black Friday von Karin Slaughter" eingeben ?
Wenn du weißt, dass du danach suchen willst, dann reicht ganz einfach z.B.
"Black" oder "Friday" oder "Frid" oder, oder, oder......
Dann wird dir auch der Titel und der Autor gefunden.
Dafür musst du nicht den riesig langen Suchtext eingeben.
Gruß, Hubert

Hintergrund, wozu das gut ist
03.03.2013 00:33:46
Oberschlumpf
Hallo Hubert,
der Grund für die Suche nach genau den Texten, wie erwähnt, ist dieser:
Ich bestelle mal mehr mal weniger viele Bücher bei eBay.
1. Mein eigtl fertiges Programm erhält als ersten Parameter die URL mit dem für mich interessanten Artikel (Buch).
2. Als 2. Parameter wird die Überschrift des Artikels aus eBay übergeben - per Copy & Paste, und da steht dann halt so etwas wie z Bsp "Black Friday von Karin Slaughter", oder ähnlich.
3. Aus dem ersten Parameter werden Datum + Uhrzeit herausgefiltert. Diesen "Termin" trage ich per VBA in Outlook ein. Und der 2. Parameter dient als Betreff für den Termin.
Nun kommt der neue Teil.
Da ich schon viele Bücher habe, ist es mir leider schon 2x passiert, dass ich ein Buch ersteigerte, welches ich schon habe :-) (Übersicht verloren :-) )
4. Nun möchte ich mit dem 2. Parameter vor Termineintrag in Outlook in meiner Bücherliste suchen, ob schon vorhanden
Wenn ich es so tun würde, wie du vorschlägst, z Bsp nur nach "Black" oder "Friday" oder "Frid" oder, oder, oder...... suchen lassen, würde dies voraussetzen, dass ich im 2. Parameter vor der Suche noch mal per Hand selektieren müsste, nach dem Motto, was ist Autor und/oder was ist Titel.
Diesen per Hand-Schritt möcht ich mir gern ersparen, deswegen wäre schön, wenn ich ne Lösung finde (oder jemand von euch), die mit dem vollständigen 2. Parameter zurechtkommt.
Gruß + Tschüss + Danke
Thorsten

Anzeige
AW: Hintergrund, wozu das gut ist
03.03.2013 11:19:28
Hubert
Hallo Thorsten
erst einmal vielen Dank für deine ausführliche Erklärung.
Jetzt ist mir natürlich klar, warum du es so und nicht anders haben willst.
Und so macht es ja auch Sinn.
Ich werde auch weiterhin über eine Lösung nachdenken, aber vielleicht hat
ja Luc schon die passende Lösung für dich. Das hört sich gut an.
Würde mich für dich freuen.
Gruß, Hubert

Ganz schön anspruchsvoll, was du dir ...
02.03.2013 23:05:16
Luc:-?
…da vorstellst, Thorsten,
noch dazu ohne Hilfsspalten! Das würde man sicher sinnvoll mit einer speziell darauf abgestimmten VBA-Subroutine lösen können. Mit xlStandardFmln nebst -Fktt dürfte es sehr schwer wdn, wenn viell auch nicht ganz unmöglich.
Habe deine Datei mal zum Anlass genommen, eine UDF, die ich voriges Jahr geschrieben hatte, darauf anzusetzen…
Die gute Nachricht:
Es geht, wenn man noch eine weitere UDF und einige StandardFktt zuhilfe nimmt. Die Formel wäre dann zwar etwas länger, aber noch im Rahmen …
=WENN(ISTZAHL(SUCHEN(",";INDEX(SplitVx(E1;{" (Taschen"."buch) "."TB"." von "." - "});2)));
GLÄTTEN(PickIn(INDEX(SplitVx(E1;{" (Taschen"."buch) "."TB"." von "." - "});2);;{2.1};", ";" "));
INDEX(SplitVx(E1;{" (Taschen"."buch) "."TB"." von "." - "});2))&", "&
INDEX(SplitVx(E1;{" (Taschen"."buch) "."TB"." von "." - "});1)
Wie man leicht erkennen kann, geht es bei SplitVx um Trennung des Suchbegriffs auch an mehreren unterschiedlichen Stellen, was keine StandardFkt (auch keine von VBA!) leistet. PickIn ist dann ggf zusätzlich nötig, um die Teile des Autorennamens in die gewünschte Reihenfolge zu bringen, alles andere, um daraus dann den normierten Suchbegriff zu erstellen. Allerdings könnte der bei der Suche eher kontraproduktiv sein, es sei denn, du hast dafür schon eine Lösung, die hier nicht doppelt gemoppelt wäre, weil ja SplitVx schon ein Datenfeld bereit stellt, dessen Komponenten sich gut bei einem VERGLEICH bzw VERWEIS in der Liste einsetzen ließen.
Die schlechte Nachricht:
Habe beim Testen noch eine(n) Fehler/Ungenauigkeit in SplitVx festgestellt, der/die erst noch behoben wdn muss, denn hier ist es die Irma Krauß, die Probleme bereitet (das 1.Element ist leer, dann erst folgen die relevanten). Außerdem wdn von der UDF noch 2 weitere intern bemüht (sie ist schließlich ziemlich universell). Da muss ich erst prüfen, ob die entsprd PgmTeile für deinen Zweck benötigt wdn. Bei der 2.UDF könnte es ähnlich sein (ist Bestandteil eines AddIns!) — sie wäre aber leichter durch Standardfktt (wenn auch umständlicher) zu ersetzen.
Also, falls ich es nicht mehr rechtzeitig schaffe (nächste Woche kaum Gelegenheit!) und du daran interessiert bist, musst du dich ggf in ca 10 KT nochmal melden.
Falls du kein Interesse daran hast, bitte gleich mitteilen, dann kann ich mir mit den Korrekturen Zeit lassen.
Gruß + schöSo, Luc :-?
PS@robert: Falls du mitliest – 1.UDF steht in PrinzipL4 – Nachricht folgt!

Anzeige
AW: Ganz schön anspruchsvoll, was du dir ...
03.03.2013 00:36:43
Oberschlumpf
Hi Luc
Grundsätzlich bin ich natürlich an jedem Lösungsvorschlag interessiert.
Aber! DU entscheidest, wann du Lust + Zeit dazu hast. Das gilt natürlich auch für jeden anderen, der sich beteiligt.
So bleibt für mich nur übrig, mich zu freuen, sobald hier was Neues steht :-)
Gruß + Tschüss + Danke
Thorsten

@Luc, habs soeben gelesen :-) owT- Gruß
03.03.2013 14:10:47
robert

an alle Beteiligten...
03.03.2013 00:17:08
Oberschlumpf
Hallo Leute!
Erst mal vielen Dank für eure Hilfe!
Ich kenn wirklich kein besseres Forum als dieses.
Dann las ich gerade die Kritik von Luc, von wegen anspruchsvoll, weil ieber ohne Hilfsspalten.
An dieser Anmerkung merkte ich, dass ich in meiner Frage zu einem Thema wohl leider etwas ungenau war - sorry.
Möchte ich eine VBA- oder eine Formellösung?
Da ich lieber im VBA-Bereich unterwegs bin, ist mir eine VBA-Lösung schon lieber.
Als ich dann aber die erste Formellösung las, dachte ich mir "ok, an Formel hatte ich nicht gedacht, aber das Ergebnis könnt ich ja mit in mein VBA-Geflecht einbinden"
Na ja, bis ich dann eben diese vielen, wohl auch erforderlichen, Hilfsspalten sah, die aber nicht so in mein "Design" passen, leider auch nicht ausgeblendet.
Hansueli, wenn du also noch Lust + Zeit hast, und vielleicht ne Lösung ohne oder weniger Hilfsspalten findest (wenn das überhaupt möglich ist!), dann würde ich mich auch über deine Hilfe weiter freuen.
Und auch an die VBA-Helfer mein größter Dank!
Ciao
Thorsten

Anzeige
Das war keine Kritik, sondern nur eine ...
03.03.2013 01:02:44
Luc:-?
…Feststellung, Thorsten;
für solche anspruchsvollen Anforderungen schreibe ich ja UDF, nur dass diese möglichst universell sein sollen, damit sie auch in anderen, ähnlich gelagerten Fällen in Fmln eingesetzt wdn können. Alles andere wären „Insellösungen“, die ich nicht sonderlich mag, da sie nicht der Universalität von Xl entsprechen. Aber nichtsdestotrotz könnte es hier natürlich genau eine solche sein, die den größten Erfolg bringt.
Wenn du bis Ablauf der Forumsfrist keine Lösung erhalten solltest, kannst du gern noch mal nachfragen, gg Ende der übernächsten Woche, falls es die o.g. UDF sein sollen.
Morrn, Luc :-?

Anzeige
Tja, da könnte Hubert recht haben, ...
03.03.2013 12:41:28
Luc:-?
…Thorsten,
denn es ging doch etwas schneller. Die Formel lautet nun …
=WENN(ISTZAHL(SUCHEN(",";INDEX(Temp(SplitVx(E1;{" (Taschen"."buch) "."TB"." von "." - "}));2)));
INDEX(SplitVx(INDEX(Temp();2);", ");2)&" "&INDEX(SplitVx(INDEX(Temp();2);", ");1);
INDEX(Temp();2))&", "&INDEX(Temp();1)
Die Teilung von Taschenbuch ist der bisherigen Begrenzung der Trennzeichenlänge auf 9 Zeichen geschuldet. Das könnte sich in künftigen Versionen aber noch ändern. Auf PickIn habe ich nun verzichtet und dafür eine neue Mini-UDF Temp hinzugefügt, damit die Formel nicht so lang wird. Ihren Zweck erfüllen sonst meine 3 UDF Rmb (remember →ungefähr analog), Rmd (remind →deutlich komplexer) und TempStoRd (→mit optionaler Rundungsfkt inkl dem Hansueli sicher vertrauten „Rappen-Runden“), falls mal jemand über eine davon „stolpert“.
Habe SplitVx so auskommentiert, dass es für deinen Zweck auch ohne die beiden intern aufgerufenen UDFs fktionieren dürfte. Die beiden Enums musst du aber beibehalten oder ihre Konstanten im Fktspgm durch die repräsentierten Werte ersetzen!
Anbei sende ich dir deine Datei zurück. Du wirst jetzt sicher bemerken, dass du dir in der Autorenspalte eine Falle eingebaut hast, die ich nicht korrigiert, aber in den zusätzlichen Suchbspp umgangen habe.
Falls du an einer Beschreibung des vollen Fktsumfangs von SplitVx interessiert sein solltest, könnte ich die hier ebenfalls einstellen.
Für erfahrene VBA-Bastler:
Wenn jemand den vollen Fktsumfang der o.g. UDF wiederherstellen möchte, muss er zuerst für einen Ersatz der intern aufgerufenen Fktt
MaskOnX (→ zB durch ein RegEx-Konstrukt mit passenden Mustern oder evtl auch die uralte, in den Tiefen des Archivs schlummernde MaskOn-Version) und vor allem VPairs sorgen (→ Herstellung eines Variants mit einem Datenfeld in Form eines vertikalen Vektors, dessen Elemente aus horizontalen Vektoren bestehen, die ggf als 1.Element eine lfdNr enthalten). Zu deren Fktsumfang könnte ich auch eine Beschreibung hier einstellen.
Gruß & schöwnatrübSo, Luc :-?

Anzeige
Hilfsspalten und anderes...
04.03.2013 08:44:45
EtoPHG
Hallo Thorsten,
Aussagen, wie ich möchte keine Hilfsspalten... und mir ist VBA lieber... lassen mich meist erschaudern. Ich hab die Erfahrung gemacht, dass diese Vorurteile auf Fixierungen der Anfrager beruhen, die einer sauberen Definition der Anforderung und damit einer effektiven Lösung des Problems diametral entgegenstehen.
Mein Vorschlag mit den Hilfsspalten ist primär ein Ansatz für eine Idee und keine fixfertige Lösung.
Formeln lassen sich aber schneller anpassen, als sich durch Massen von (undurchsichtigem) VBA-Code durchzuwursteln. Bei deinem Level Excel gut / VBA gut hab ich irgendwie vorausgesetzt, dass du selbst 'Hilfsspalten' ausblenden, bzw. Formeln zusammenfassen, weglassen, optimieren kannst.
Grundsätzlich hapert es IMHO an klaren Vorstellungen was du willst.
Im Grunde genommen willst du nicht eine Bücherliste durchsuchen, sondern einen Text (nämlich den aus ebay) darauf analysieren, ob er schon einen Buchtitel und/oder Autor deiner vorhandenen Bibliothek enthält. Nur schon das Umkehren der Anforderungen gibt dir vielleicht andere Ideen, an die Sache ranzugehen. Ich würde zudem mehr Struktur in die Biblio-Datensätze bringen. Studiere die API's von amazon und google.books, die können dir für dein Problem Tonnen von Infos liefern.
Gruess Hansueli

Anzeige
Watn los? Ausjeschlumfft? owT
07.03.2013 19:13:03
Luc:-?
:-?

AW: Watn los? Ausjeschlumfft? owT
07.03.2013 22:28:26
Oberschlumpf
Hi
Nö nich ausge..usw.
Ich bin immer noch am Testen.
Aber ich bins auch leid, Diskussionen zu führen, die mit der eigentlichen Frage nix mehr zu tun haben.
(siehe alle Antworten, die sich eher damit beschäftigen, eine Meinung darüber kund zu tun, wie meine Fragestellung bewertet wird...usw)
Und nachdewm ich ja einsah, dass ich einige Infos zu vage oder gar nicht angab, und dies nachholte, wurde es immer noch nicht besser.
Und ich weiß auch jetzt noch nicht, was "diametral" bedeutet - nu ja, und ich will es auch jetzt noch nicht wissen.
Noch mal danke an alle, die versucht haben zu helfen.
Ciao
Thorsten

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige