Userform
#21
Die Informationen befinden sich rechts davon in den 2 nanebenliegenden Zellen. Also kann ich die ganze Zeile löschen und nach oben verschieben hat auch gut geklappt. Danke dir :)
Top
#22
Hallo Madness,

für eine Auflistung mehrerer Treffer bietet sich eine ListBox an. Da kann man alle gewünschten Spalten darstellen. Auch zusätzliche Informationen wie in meinem Beispiel die jeweilige Adresse in die Listboxspalte 0 (Zählung fängt mit Null an) können erfasst werden.

Dialog UserForm1
Option Explicit 
 
Private Sub CommandButton1_Click() 
  Dim oWkSh As Worksheet 
  Dim rngF As Range 
  Dim strF As String 
   
  Set oWkSh = ThisWorkbook.Worksheets("Datenbank_TN") 
  If TextBox1.Value <> "" Then 
    Set rngF = oWkSh.Columns(1).Find(TextBox1.Value, , xlValues, xlWhole) 
    If Not rngF Is Nothing Then 
      strF = rngF.Address 
      With ListBox1 
        .Clear 
        .BoundColumn = 1 
        .ColumnCount = 4 
        .ColumnWidths = 0 'erste Spalte wird ausgeblendet 
        .MultiSelect = fmMultiSelectMulti 
        .ListStyle = fmListStyleOption 
        Do 
          .AddItem rngF.Resize(, 3).Address(External:=True) 
          .List(.ListCount - 1, 1) = rngF.Value 
          .List(.ListCount - 1, 2) = rngF.Offset(, 1).Value 
          .List(.ListCount - 1, 3) = rngF.Offset(, 2).Value 
          Set rngF = oWkSh.Columns(1).FindNext(rngF) 
        Loop While Not rngF Is Nothing And rngF.Address <> strF 
      End With 
    Else 
      With TextBox1 
        MsgBox "Der gesuchte Begriff  """ & .Value & _
           """  wurde nicht gefunden.", _
           48, "   Hinweis für " & Application.UserName 
        .SetFocus 
        .SelStart = 0 
        .SelLength = Len(.Value) 
      End With 
    End If 
  Else 
    MsgBox "Sie müssen einen Suchbegriff eingeben - danke.", _
       48, "   Hinweis für " & Application.UserName 
    TextBox1.SetFocus 
  End If 
End Sub 
 
Private Sub CommandButton2_Click() 
  Dim i As Long 
  Dim rngZ As Range 
  With ListBox1 
    For i = 0 To .ListCount - 1 
      If .Selected(i) Then 
        If Not rngZ Is Nothing Then 
          Set rngZ = Application.Union(rngZ, Range(.List(i, 0))) 
        Else 
          Set rngZ = Range(.List(i, 0)) 
        End If 
      End If 
    Next i 
  End With 
  If Not rngZ Is Nothing Then 
    Application.Goto rngZ 
  End If 
End Sub 


VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 14 - mit VBAHTML 12.6.0

TypNameEigenschaften
CommandButtonCommandButton1
Caption:Suchen
Height:24
Left:181,55
TabIndex:1
Top:16,9
Width:72
CommandButtonCommandButton2
Caption:Auswahl bearbeiten
Height:24
Left:262,95
TabIndex:3
Top:16,9
Width:81,4
ListBoxListBox1
Height:94,6
Left:20,25
TabIndex:2
Top:47,25
Width:324
TextBoxTextBox1
Height:22,5
Left:20,25
TabIndex:0
Text:
Top:18
Width:153

Modul Modul1
Option Explicit 
 
Sub Schaltfläche1_Klicken() 
  UserForm1.Show 
End Sub 


VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 14 - mit VBAHTML 12.6.0

Gruß Uwe


Angehängte Dateien
.xlsm   Suchen per UserForm.xlsm (Größe: 22,55 KB / Downloads: 7)
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Madness
Top
#23
Danke dir, werd ich gleich mal in einer Kopie ausprobieren und mir anschauen ob ich das so verwenden kann, aber schaut glaube ich genauso aus, wie das was ich brauche.

Danke dir :)
Top


Gehe zu:


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