Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Suchfunktion mit wiedergabe in Textbox
07.06.2016 12:40:39
Uwe
Hallo zusammen,
ich bin hier neu und bin in sachen VBA ein absoluter Anfänger. Ich habe eine Userform gebaut und auch damit schon einige Erfolge erzielen können.
Nun möchte ich eine Suchfunktion bauen und finde trotz tagelangem Foren lesen und Youtube tutorials gucken keine Lösung die entweder funktioniert bzw. die ich verstehe :).
Folgendes Szenario soll passieren:
Bei Eingabe in eine Combobox soll ein Tabellenblatt "Datenbank" in Spalte "B" durchsucht werden und wenn es nur einen Treffer gibt sollen sich die Werte der Spalten "C" bis "M" in die dafür vorgesehene Textboxen schreiben. Wenn es mehrere Treffer gibt soll eine separates Fenster aufgehen mit der Auflistung aller Treffer und der Möglichkeit den "gewünschten" treffer auszuwählen.
ich habe zwar mal eine Suchfunktion hinbekommen, allerdings haben die Ergebnisse nie gestimmt :( Daher wende ich mich nun an euch.
Bitte schreibt so einfach wie möglich da ich viele Forenantworten nicht immer verstanden habe :)
DANKE vielmals vorab.

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Suchfunktion mit wiedergabe in Textbox
08.06.2016 03:18:11
Piet
Hallo Uwe,
kennst du von Wald Disney den Film "der Zuberlehrling"? Am einfachsten mit einem Zauberstab!
Nicht böse sein, aber deine Wünsche erinnern mich amüsanterweise an den Zauberlehrling!
Du willst in Spalte B suchen, sagst uns aber nicht was du suchst, was ausgewertet werden soll.
Dann sollen Werte aus Spalte C + M in dazugehörige Textboxen, aber niemand weiss welche Zeilen du meinst.
Was genau in die Textboxen kopiert werden soll? Es gibt ein separates Fenster das man auch erraten muss.
Und von wo sollen welche Daten im Fenster erscheinen? Das sollte bitte genauer definiert werden.
Wir sind nun mal keine "Zuberlehrlinge", und auch keine Hellseher. (Spass muss sein)
mfg Piet

Anzeige
AW: Suchfunktion mit wiedergabe in Textbox
08.06.2016 09:53:33
Uwe
Hallo Piet,
danke :) für den lockeren wink mit dem Zaunpfahl *aua* :)
anscheinend habe ich die Situation nicht eindeutig dargestellt.
Hier der Code den ich bisher versucht habe:
Private Sub commandbutton1_Change()
Dim c As Variant
For c = 6 To Sheets("Datenbank").Range("A65536").End(xlUp).Row
If commandbutton1.Text = Sheets("Datenbank").Cells(c, 2) Then
tb_1.Value = Sheets("Datenbank").Cells(c, 3)
tb_2.Value = Sheets("Datenbank").Cells(c, 4)
tb_3.Value = Sheets("Datenbank").Cells(c, 5)
tb_4.Value = Sheets("Datenbank").Cells(c, 6)
tb_5.Value = Sheets("Datenbank").Cells(c, 7)
tb_6.Value = Sheets("Datenbank").Cells(c, 9)
tb_7.Value = Sheets("Datenbank").Cells(c, 11)
tb_8.Text = Sheets("Datenbank").Cells(c, 12)
tb_9.Text = Sheets("Datenbank").Cells(c, 13)
End If
Next
End Sub
Leider stimmen die Ergebnisse die in der Datenbank gesucht warden nicht immer. Doppelte Werte kann ich damit ja auch nicht ausgeben (In der Spalte B der Datenbank können sowohl Zahlen als auch Zahlenbuchstaben kombinationen stehen, diese können auch doppelt vorhanden sein).
Bezüglich der Daten die wiedergegeben warden sollen, so sollen es immer die Werte (auch hier sind Zahlenbuchtaben kombinationen vorhanden) aus den Spalten rechts von dem "treffer" wiedergegeben warden. Also aus der gleichen Zeile.
Das mit dem separaten Fenster ist nur ein absoluter Wunsch.... Eine msgbox als Meldúng würde zur not auch erstmal ausreichen :)
So lieber Piet, ich hoffe ich konnte die Situation etwas klarer darstellen :)
Danke vorab für deine Hilfe und dein ehrliches Feedback :)
Dein Zauberlehrling :)

Anzeige
AW: Suchfunktion mit wiedergabe in Textbox
08.06.2016 22:25:33
Piet
Hallo Uwe
ich bin gedanklich schon in Urlaub, hoffe das andere dir weiterhelfen.
Schicke dir aber auf die schnelle einen ungetesteten Code von dir den ich etwas umgeschrieben
habe mit einer Scuhfunktion um doppelte Eintrage zu vermeiden. Ich hoffe es klappt. (ungeprüft)
Findet der Suchlauf den Wert vorher, vor Zeile c, ist er schon einmal in der ComboBox drin.
Ansonsten bin ich in Urlaub und verabschiede mich höflich. Mit With kann man den Code verkürzen!
mfg Piet
Private Sub commandbutton1_Change()    'korrigiert von Piet
Dim c As Variant, cBTxt As String, rFind As Object
With Sheets("Datenbank")
For c = 6 To .Range("A65536").End(xlUp).Row
cBTxt = commandbutton1.Text
'suche nach doppelten Werten in Spalte C, beginnend mit Zeile 1
Set rFind = .Columns(2).Find(What:=cBTxt, After:=.Cells(1, 2), LookIn:= _
xlValues, LookAt:=xlWhole, SearchDirection:=xlNext, MatchCase:=True)
'keine doppelten werte laden
If rFind.Row >= c Then
If cBTxt = .Cells(c, 2) Then
tb_1.Value = .Cells(c, 3)
tb_2.Value = .Cells(c, 4)
tb_3.Value = .Cells(c, 5)
tb_4.Value = .Cells(c, 6)
tb_5.Value = .Cells(c, 7)
tb_6.Value = .Cells(c, 9)
tb_7.Value = .Cells(c, 11)
tb_8.Text = .Cells(c, 12)
tb_9.Text = .Cells(c, 13)
End If
End If
Next
End With
End Sub

Anzeige
AW: Suchfunktion mit wiedergabe in Textbox
09.06.2016 13:53:12
Uwe
Hallo Piet,
danke nochmals für deine Hilfe.
Leider funktioniert die Suche mit diesem Code nicht ganz. Ich verstehe auch nicht ganz warum Du es in Commandbutton1_Change umbenannt hast (geht das mit einer Combobox nicht? Brauche ich einen extra button?)
Wie Du merkst ich habe null plan....
Viele Grüße
und danke nochmals!
Ach ja und einen schönen Urlaub.
Grüße
Uwe

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige