Excel vba: Suchmechanismus
#41
Hallo Carsten,

nun ein Kunde droht mit Auftrag und möchte z.B. 50 Teile haben.
Damit man weiß welche Teile an welchen Kunden verschickt wurden und das auch nachverfolgen kann, identifiziert man an Hand dieser Kennung das Teil.
Also jetzt weiß man das Teil mit der Kennung z.B. "RB" im Datenstring wurde an Kunde xyz geliefert.

Hat so ein wenig mit Warenmanagement zu tun.
Top
#42
Hallo Erich,

ich frage mich gerade, warum Du uns diese Informationen nicht gleich ganz am Anfang mitgeteilt hast.  :(

Also müsste man die V2 aufbohren und dann von oben den ersten, noch freien, Suchstring 'RB' suchen und mit der Bestell-/Kundennummer in Spalte B belegen.
Habe ich das so richtig verstanden?
Dann würde man auch nicht das Datum benötigen, sondern einfach nur nach dem ersten 'RB' und einer freien Zelle daneben suchen.
Oder wird das Datum für diese Bestellung doch benötigt? - Dann müsste man dies in die Suche integrieren.

Die Formellösung entfällt dann komplett, zur Auslösung der Suche würde ich dann auch eher einen Button integrieren und nicht auf Zelländerung reagieren.
Mit welcher Datenmenge muss man rechnen, also wieviel Zeilen sind in Spalte A?


Gruß Carsten

PS:
Habe heute leider keine Zeit, die Bastelei kommt also nicht gleich ...

PPS:
Klingt eher nach einem Fall für eine kleine Datenbank ...
Top
#43
Hallo Carsten,

nun die ganzen Hintergrundinformationen sind ja nicht wirklich wichtig für die Aufgabe - meine ich zu mindest - vielleicht liege ich auch falsch.

Deshalb wollte ich ja auch nur ab einer bestimmten Zeile nach unten nach einem Wert suchen und in der Nachbarzelle etwas eintragen - z.B. eine Bestellnummer.
Das Datum ist wie bereits gesagt in einer Einfachausführung nicht wichtig.

Die Datenmenge ist nicht bezifferbar, kann aber bis zu mehreren hundert Datenstrings anwachsen.

Ich denke eine Lösung mit Eingabemaske wäre ideal.
Könnte mir da folgendes vorstellen:
Drei Eingabefelder - Textboxen - für die Konfiguration der Suche:
Im Eingabefeld 1 sollte man die Beginnzeile für die Suche eintragen.
Im Eingabefeld 2 wird der Markierungstext/Bestellnummer/usw hinterlegt.
Im Eingabefeld 3 gibt man den Suchwert ein und nach einem Return wird der Wert in den Datenstrings gesucht und die Bestellnummer wird daneben in der Tabelle eingetragen.
Das Eingabefeld 3 sollte aber nach dem Return nicht verlassen werden - denn so kann man direkt nach der Suche den nächsten Suchwert eintippen ohne mühsam den Focus wieder auf das Textfeld zu setzen.

Wenn man das Datum doch berücksichtigen wollte - das wäre eine elegantere Version zum Eingabefeld 1 - dann müsste man das gewünschte Datum anstelle der Beginnzeile eintragen - jetzt wird nur in den Datenstrings mir dem relevanten Datum gesucht.
Ein Variationsmöglichkeit mit der Eingabe zwischen Zeilennummer oder Datumsberücksichtigung würde dem Ganzen die Krone aufsetzen.

Ich weiß man kann das sicherlich noch bis ins extreme auslutschen - aber wenn ich so etwas wie beschrieben hätte - dann juhuuuu! Thumps_up
Top
#44
dezentes schamhaftes "hüsteln" :20: 

das beschriebene würde ich weiterhin so machen, wie ich es gezeigt habe, in der Tabelle.
In der Tabelle passiert das auch nach Enter oder Tab oder Klick raus aus der Zellen und der Focus kann auch aif der Zelle bleiben.
Gruß Atilla
Top
#45
Auch *hüstel*  :46:

Habe gerade nochmal die ersten Beiträge des Threads durchgelesen ...
Auf diese Anforderung, dass die Suche der Strings zur Hinterlegung von Bestell-/Kundennummern dient, wäre ich nie gekommen. Auch nicht nach nochmaligem Lesen mit dem derzeitigen Wissenstand. Da hätte ich niemals den Vorschlag mit den Formeln gemacht ...

Attila hat Recht, im Prinzip langt die V2 aus. Man sollte/müsste diese aber noch etwas anpassen, bzw. berichtigen.
Wie ich auch schon ein Beitrag weiter oben geschrieben hatte.

Z.Bsp. kann/sollte/müsste die Schleife nach dem ersten Fund des Suchstringes und dem Eintrag der Nummer verlassen werden und nicht weiter suchen.
Vorhandene Einträge in Spalte B dürfen nicht überschrieben werden ...
Was, wenn nach unten nichts gefunden wird, dann ganz oben anfangen und nach Suchstring mit freier B-Spalte suchen?

Und noch so ein paar Kleinigkeiten ...




Gruß Carsten
Top
#46
Hallo Erich

anbei mal eine Beispieldatei von mir, die den ganzen Zauber mit Zeilen suchen umgeht.  Gib mir das Datum an, mein Programm sucht den Block, und sucht in jedem Block nach den Begriffen die du angibst, mit Ausgabe von deinem Text.  Wenn zum Auswerten nach weiteren Begriffen gesucht werden muss lass es mich wissen, das ist auch kein Thema.

Ich hoffe so kommen wir deiner Lösung vom Zeitaufwand mal naeher ....  Würde mich sehr freuen !!

mfg  Gast 389


Angehängte Dateien
.xlsm   SuchenTest_V2 F.xlsm (Größe: 21,88 KB / Downloads: 5)
Top
#47
*räusper*


Code:
  'alte Liste komplett lsöchen
  .Range("B2:B" & LZell).ClearContents
... gerade das ist grundverkehrt und nicht erwünscht.


Zitat:... die den ganzen Zauber mit Zeilen suchen umgeht.
Du bist mein Held, Du darfst ...
Die nötigen Infos solltest Du jetzt besitzen.


Gruß Carsten
Undecided
Top
#48
Hallo Gast 389,

vielen Dank für Deinen Beitrag funktioniert auch super.

Ich versteh nur Deinen Einwand "mich stört wenn Lösungen zuviel Aufwand erfordern" nicht.

Es ist toll dass es dieses Forum gibt und man auch wirklich kompetente Hilfe bekommt.


Dank an alle die sich um mein Anliegen bemüht haben.
Top
#49
Hallo Erich,

benötigst Du noch ein Beispiel, oder kannst Du Dir aus den geposteten Vorschlägen etwas zusammen basteln?


Gruß Carsten
Top
#50
Hallo Carsten,

ja klar könnte noch eine Beispielvariante hilfreich sein.

Wie ich weiter oben in #43 beschrieben habe, wäre eine Dialogbox für die notwendigen Eingabe schöner - weil auch nach meiner Ansicht unabhängiger von einem Tabellenblatt.
Schau Dir das bitte doch nochmals an was ich da geschrieben habe.

Wenn es dazu eine Lösung geben könnte, ist der Aufwand zwar höher, aber der Bedienkomfort bedeutend besser - nach meinem Gutdünken.
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste