AW: Combobox durchsuchen
24.06.2014 00:59:28
Werner
Hallo,
hier eine Lösung allerdings mit einer Listbox und nicht mit einer Combobox (den Code habe ich auch hier aus dem Forum).
Option Explicit
Dim sSuchbegriff As String
Dim iSpalte As Integer
Private Sub Abbruch_Click()
Unload Me
End Sub
Private Sub Anzeigen_Click()
Application.ScreenUpdating = False
Call UserForm_Activate
Application.ScreenUpdating = True
End Sub
Private Sub list_Filter()
Application.ScreenUpdating = False
Dim iIndex As Integer
If sSuchbegriff = "" Then Call UserForm_Activate
For iIndex = Stückliste.ListCount - 1 To 0 Step -1
If Not CBool(InStr(LCase(Stückliste.List(iIndex, iSpalte - 1)), LCase(sSuchbegriff))) Then Stü _
ckliste.RemoveItem iIndex
Next iIndex
Select Case iSpalte
Case 1: TextBox1.Value = ""
End Select
If Stückliste.ListCount = 0 Then
MsgBox "Zum eingegebenen Filter-Begriff """ & sSuchbegriff & """ wurde kein Eintrag gefunden.", _
_
48, " Hinweis für " & Application.UserName
End If
Application.ScreenUpdating = True
End Sub
Private Sub Suchen_Click()
Application.ScreenUpdating = False
If Stückliste.ListCount "" Then
sSuchbegriff = Trim$(TextBox1.Value)
iSpalte = 1
End If
Call list_Filter
Application.ScreenUpdating = True
End Sub
Private Sub UserForm_Activate()
Dim X As Long
Dim i As Integer
Dim sText As String
Application.ScreenUpdating = False
Worksheets("Daten").Activate
TextBox1.SetFocus
Me.Stückliste.Clear
X = Range("D" & Rows.Count).End(xlUp).Row 'Spalte an deine Bedürfnisse anpassen
For i = 5 To X 'hier Zeile 5 ggf. an deine Bedürfnisse anpassen
With Worksheets("Daten")
sText = .Cells(i, 4).Value 'hier Spalte D (4) ggf. an deine Bedürfnisse anpassen
End With
Me.Stückliste.AddItem
Stückliste.List(Stückliste.ListCount - 1, 0) = Cells(i, 4) 'hier Spalte D (4) ggf. an deine Bedü _
rfnisse anpassen
Next i
Application.ScreenUpdating = True
End Sub
Du brauchst eine Userform, darauf eine Textbox (Name: TextBox1) zur eingabe des Suchbegriffs, einen Command Button für Suchen (Name: Suchen), einen Command Button für wieder alles anzeigen (Name: Anzeigen) und eine Listbox mit einer Spalte (Name: Stückliste).
Solltest du eine kleine Test-Tabelle benötigen dann melde dich. Derzeit kann ich sie nicht hochladen das könnte ich erst am Mittwoch.
Gruß Werner