Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Suche mit Text- u. Listbox in Userform

Suche mit Text- u. Listbox in Userform
22.10.2005 14:00:52
Michael
Hallo,
habe mit dem unten aufgeführten Quelltext eine Suche auf einem Tabellenblatt.
Nun möchte ich aber die Suche nicht mehr auf dem Tabellenblatt, sondern in einer Userform haben. Hab schon einiges ausprobiert aber komme nicht weiter, hoffe mir kann da jemand weiter helfen. Ein- und Ausgabe soll in der Text- bzw. Listbox im Userform erfolgen.
MfG
Michael
Option Explicit

Private Sub TextBox1_Change()
Dim arr()     As String
Dim i         As Long
Dim C         As Range
Dim lCount    As Long
Dim Rng       As Range
Dim firstAddr As String
Worksheets("Suche").Range("B7:B10000").ClearContents
With Worksheets("Lager")
Set Rng = .Range("A2:A" & .Range("A65536").End(xlUp).Row)
End With
lCount = WorksheetFunction.CountIf(Rng, TextBox1.Text & "*")
If lCount = 0 Then Exit Sub
ReDim arr(1 To lCount)
i = 1
With Rng
Set C = .Find(TextBox1.Text & "*", lookat:=xlWhole)
If Not C Is Nothing Then
firstAddr = C.Address
Do
arr(i) = C.Text
i = i + 1
Set C = .FindNext(C)
Loop While Not C Is Nothing And C.Address <> firstAddr
End If
End With
Worksheets("Suche").Range("B7:B" & 6 + lCount) = WorksheetFunction.Transpose(arr())
End Sub

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Suche mit Text- u. Listbox in Userform
23.10.2005 15:34:03
achim
Hallo
Habe das Problem so gelöst. Schicke dir meinen Code. Nur noch entsprechend umschreiben und dann müsste es gehen.

Private Sub SuchenAnzeigen_Click()
Set Frm1 = KundenSuch
With Frm1
Sheets("KundenNeu").Select
Range("B2:B1000").Select
Selection.Find(What:=.ComboBox1.Value, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False).Activate
'Tabelleninhalte in UserForm übertragen
.MatrialKundenNr.Value = ActiveCell.Offset(0, -1).Value
.KundenanlegenVorname.Value = ActiveCell.Offset(0, 1).Value
.KundenanlegenPrivatTel.Value = ActiveCell.Offset(0, 6).Value
.KundenanlegenGeschäftlichTel.Value = ActiveCell.Offset(0, 7).Value
.KundenanlegenHandy.Value = ActiveCell.Offset(0, 8).Value
Exit Sub
End With
End Sub

Gruß
achim h.
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige