Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1324to1328
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

per VBA-Suchen Schrittweise zum gesuchten

per VBA-Suchen Schrittweise zum gesuchten
07.08.2013 18:25:35
Pascal
Guten Tag liebe VBA – Gemeinde
Ich hoffe sehr, dass Ihr mir bei meinem Problem / Vorhaben unterstützen könnt.
In einer umfassenden Excel – Arbeitsmappe (diese besteht aus nahezu 100 Tabellenblättern, auf welchen diverse Begriffe, Anleitungen mit Hyperlinks, Stichworte etc…) abgelegt sind soll der User nun eine umfassende Suchfunktion erhalten.
D.h. die Excel-Arbeitsmappe ist sozusagen eine riesige Sammlung von Anleitungen, Links zu Dokumentationen etc.
Leider aber ist die Datenbank zu gross um hier einstellen zu können.
Die Suchfunktion welche ich erstellen / einbauen möchte, soll dem User ermöglichen, seine Suche – beginnend von einem Haupt-Suchbegriff aus – ständig weiter einzugrenzen, bis er schliesslich beim gesuchten Datensatz ist.
Beispiel:
In der Arbeitsmappe gibt’s ein Tabellenblatt "Haus". Dort drauf sind verschiedenste Anleitungen zu einem Haus abgelegt. Diese gilt es nun zu durchsuchen.
Der User soll also auf einer Userform die Möglichkeit haben, seine Suche ständig einzugrenzen.
In unserem Beispiel sucht der User zuerst nach "Haus". Das Programm soll nun auf das Register "Haus" zugreiffen und dem User alle dort draufstehenden Begriffe, Anleitungen, etc…. anzeigen.
Nun tippt der User seinen zweiten Suchbegriff ein: "z.B. "Anleitung". In der Folge sollen nun (nur noch auf dem Tabellenblatt "Haus") alle Zellen nach dem Vorkommen des zweiten Suchbegriffs durchsucht werden (in unserem Falle "Anleitung"). Es sollen dann dem User alle Datensätze angezeigt werden, die das Wort "Anleitung" enthalten (und sich auf dem Tabellenblatt "Haus" befinden). Nun tippt der User seinen nächsten Suchbegriff ein. Z.B. "Elektro". Nun sollen in der Folge alle "Anleitungen" weiter durchsucht werden nach dem Begriff "Elektro". Usw.
D.h. die Suche soll also immer weiter eingegrenzt werden, bis man schliesslich zum gesuchten Datensatz kommt.
Es soll auch jederzeit möglich sein, (sollte z.B. zu einem Begriff nichts gefunden werden) wieder eine Such-Stufe zurück zu gehen und nochmals nach einem anderen Begriff zu suchen.
Ich hoffe, man versteht was ich meine ?
Ist sowas überhaupt realisierbar ?
Anbei eine kleine Muster-Datei die vom System her so aufgebaut ist, wie meine grosse Arbeitsmappe. (Datenbank)
https://www.herber.de/bbs/user/86753.zip
Natürlich freu ich mich über Eure Inputs / Ratschläge / Beispiel und danke Euch im voraus herzlich für Eure Unterstützung.

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: per VBA-Suchen Schrittweise zum gesuchten
07.08.2013 19:00:17
Christian
Hallo Pascal,
mein Vorschlag: schreibe alle Daten in eine Tabelle.
In der ersten Spalte fügst du zu jedem Datensatz deine "Hauptklasse" wie "Haus", "Garten", etc. ein.
Die Suche erfolgt dann einfach per Autofilter.
Gruß
Christian

AW: per VBA-Suchen Schrittweise zum gesuchten
07.08.2013 19:08:40
Pascal
Hallo Christian
vorerst mal vielen Dank für Deine rasche Antwort. Aber ganz soo einfach ist's halt doch nicht. D.h. die Arbeitsmappe hat bereits jetzt schon über hundert Tabellenblätter. Um etwas vernünftig zu finden, müsste der User also (beim Einsatz von Autofiltern) schon mal wissen, auf welchem Tabellenblatt er etwas bestimmtes suchen muss.
Genau hier liegt aber das Problem.
D.h. der User soll die ganze Arbeitsmappe schrittweise nach etwas durchsuchen können. D.h. die Suche soll zuerst mit "der grossen Schaufel" beginnen. Danach soll der Inhalt der zu durchsuchenden Werte ständig weiter abnehmen, bis der User schliesslich zum gesuchten Datensatz (oder zu den paar wenigen noch bleibenden Datensätzen) gelangt.
Dein Vorschlag mit dem Autofiltern hatte ich auch schon vor ein paar Jahren mal probiert. Aber aufgrund der mittlerweilen unzählig vielen Datensätzen und Tabellenblättern in meiner Datenbank - wieder verworfen.
Es muss wirklich eine UserForm geben, auf der der User seine Suchbegriffe eintippen kann.
hat jemand eine Lösung ?

Anzeige
AW: per VBA-Suchen Schrittweise zum gesuchten
07.08.2013 19:42:49
Christian
nein, eben nicht 100 Tabellenblätter, sondern alle Daten in ein Blatt und zB. in die erste Spalte jeweils deine Klasse (also, dass was du bisher als Tab-Namen eingesetzt hast) eintragen. Alle weiteren Tabellenblätter kannst du löschen.
Es macht keinen Sinn, Daten mit gleicher Struktur auf mehrere Tabellen zu verteilen.
Gruß
Christian

AW: per VBA-Suchen Schrittweise zum gesuchten
07.08.2013 20:16:09
Pascal
... geht leider auch nicht.
die Tabellenblätter selber haben nicht immer 100% die gleiche Struktur

ComboBox Hierachie
07.08.2013 21:46:47
Christian
Hallo Pascal,
ggf. hilft dir das ja schon mal weiter:
https://www.herber.de/bbs/user/72401.xls
siehe Thread von 2010:
https://www.herber.de/forum/archiv/1184to1188/t1187844.htm
Bei "Excel gut - VBA gut" sollte es ein Leichtes sein, dies auf deinen Bedürfnisse anzupassen.
Aber ich bin mir sicher, dass du dir keinen Gefallen damit tust, die Daten auf x Blätter zu verteilen.
Gruß
Christian

Anzeige
AW: ComboBox Hierachie
08.08.2013 16:29:39
Pascal
Hallo Christian
Das ist schon mal recht toll dieser Lösungsvorschlag.
aber ... ich habe zwischenzeitlich noch eine für mich super - Beispielsdatei in einem alter Thread gefunden, die genau das macht, was ich brauch:
https://www.herber.de/bbs/user/86763.xls
Einziges Problem das ich hiermit bisher noch nicht habe lösen können:
die Suche findet die Begriffe, und schreibt diese auf das Such-Tabellenblatt.
Hier müsste ich irgendwie den Code noch anpassen, dass mir bei einem gefundenen Begriff immer die komplette Zeile von der Spalte A bis und mit Spalte J auf das Such-Tabellenblatt übertragen wird.
kann ich das irgendwie im Code anpassen?
kannst Du mir da helfen ? Wäre Supernett

Anzeige
AW: ComboBox Hierachie
09.08.2013 10:45:26
Pascal
Hallo allerseits
zu meinem Problem / zu meiner obigen Frage:
ich habe zwischenzeitlich noch eine für mich super - Beispielsdatei in einem alter Thread gefunden, die genau das macht, was ich brauch:
https://www.herber.de/bbs/user/86763.xls
Einziges Problem das ich hiermit bisher noch nicht habe lösen können:
die Suche findet die Begriffe, und schreibt diese auf das Such-Tabellenblatt.
Hier müsste ich irgendwie den Code noch anpassen, dass mir bei einem gefundenen Begriff immer die komplette Zeile von der Spalte A bis und mit Spalte J auf das Such-Tabellenblatt übertragen wird.
kann ich das irgendwie im Code anpassen? Leider hab ich das bisher (obwohl bestimmt für einen VBA-Profig einfach) noch nicht hingekriegt. (eigentlich hätte ich beim Einstellen dieses Threads besser schreibem müssen: Excel gut, VBA bescheiden
kann mir da evt. jemand von Euch helfen ? Wäre Supernett

Anzeige
AW: ComboBox Hierachie
09.08.2013 11:02:54
Rudi
Hallo,
        If Not rngFund Is Nothing Then
Set rngUnion = oWS.Range(oWS.Cells(rngFund.Row, 1), oWS.Cells(rngFund.Row, 10))
strErste = rngFund.Address
Set rngFund = oWS.UsedRange.FindNext(rngFund)
Do While strErste  rngFund.Address
Set rngUnion = Union(oWS.Range(oWS.Cells(rngFund.Row, 1), oWS.Cells(rngFund.Row, _
10)), rngUnion)
Set rngFund = oWS.UsedRange.FindNext(rngFund)
Loop
End If

Gruß
Rudi

AW: ComboBox Hierachie
09.08.2013 11:09:16
Pascal
Boah das ging aber schnell !
Danke lieber Rudi Danke !!!!!!!

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige