Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema ListBox
BildScreenshot zu ListBox ListBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema TextBox
BildScreenshot zu TextBox TextBox-Seite mit Beispielarbeitsmappe aufrufen

Such in Spalte Ergebnis in listbox | Herbers Excel-Forum


Betrifft: Such in Spalte Ergebnis in listbox von: Markus
Geschrieben am: 14.10.2008 11:24:35

Hallo zusammen,

hab wieder mal ein Problem.

Hab ne Userform mit mehreren Textboxen und einer Listbox

In Textbox1 steht mein Suchtext das makro sucht nun im angegebenen Arbeitsblatt nach dem Text und
schreibt mir alle Daten aus der Gefundenen Zeile in Textboxen.

Hab nun festgestellt das der Suchtext öfters in einer spalte auftaucht.

Möchte nun ne Listbox einfügen um die Daten darin einzulesen.

Bis jetzt hab ich folgendes:


Private Sub CommandButton7_Click()
Sheets("Z").Activate
With ActiveSheet.Range("A:E")
Set found = .Find(UserForm1.TextBox2.Text)
If Not found Is Nothing Then

ErsterTreffer = found.Address
zeile = found.Row

If found.Row > zeile Then zeile = found.Row
End If

UserForm1.TextBox3 = _
.Cells(zeile, 2).Value
UserForm1.TextBox4 = _
.Cells(zeile, 3).Value
UserForm1.TextBox5 = _
.Cells(zeile, 4).Value
UserForm1.TextBox6 = _
.Cells(zeile, 5).Value
UserForm1.TextBox7 = _
.Cells(zeile, 1).Value
End With

End Sub



Suchtext ist in Spalte E (mehrmals vorhanden)
Wert in Spalte A ändert sich
Werte der anderen Spalten bleiben gleich

Wie kann ich das Makro erweitern vergleich den Suchtext mit dem Zelleninhalt wenn gleich dann übenehm den Wert aus spalte A in die Listbox.

DANKE

  

Betrifft: AW: Such in Spalte Ergebnis in listbox von: fcs
Geschrieben am: 14.10.2008 13:29:46

Hallo Markus,

zum Füllen einer Listbox mit Daten weiterer Fundstellen muss das Makro etwa wie folgt aussehen.

Gruß
Franz

Private Sub CommandButton7_Click()
  Sheets("Z").Activate
  With ActiveSheet.Range("A:E")
  Set found = .Find(Userform1.TextBox2.Text)
  If Not found Is Nothing Then
    
    ErsterTreffer = found.Address
    Zeile = found.Row
    
    If found.Row > Zeile Then Zeile = found.Row
    
  End If
    
    Userform1.TextBox3 = _
    .Cells(Zeile, 2).Value
    Userform1.TextBox4 = _
    .Cells(Zeile, 3).Value
    Userform1.TextBox5 = _
    .Cells(Zeile, 4).Value
    Userform1.TextBox6 = _
    .Cells(Zeile, 5).Value
    Userform1.TextBox7 = _
    .Cells(Zeile, 1).Value
    
    'Listbox Liste leeren
    Userform1.Listbox1.Clear
    'Listbox 1. Zeile eintragen
    Userform1.Listbox1.AddItem .Cells(Zeile, 1).Value
    
    'Listbox mit weiteren Daten füllen
    Do
      Set found = .FindNext(After:=found)
      If found.Address = ErsterTreffer Then Exit Do
      Userform1.Listbox1.AddItem .Cells(found.Row, 1).Value
    Loop
  End With
End Sub




  

Betrifft: AW: Such in Spalte Ergebnis in listbox von: Markus
Geschrieben am: 22.10.2008 06:56:20

Hallo,

hab den Code etwas verändert funktioniert soweit ganz gut.


Private Sub CommandButton7_Click()

Application.ScreenUpdating = False

  Sheets("Tabelle2").Activate
  With ActiveSheet.Range("A:E")
  
  Set found = .Find(UserForm1.TextBox2.Text)
  If Not found Is Nothing Then
  
     ErsterTreffer = found.Address
    zeile = found.Row
       
    If found.Row > zeile Then zeile = found.Row
    
   End If
   
    UserForm1.TextBox3 = UserForm1.TextBox2.Text

     UserForm1.ListBox2.ColumnCount = 5
     UserForm1.ListBox2.ColumnWidths = "85;350;65;80;50"
     UserForm1.ListBox2.Clear
     
   i = 0
   Do
      UserForm1.ListBox2.AddItem .Cells(found.Row, 1).Value
      UserForm1.ListBox2.Column(1, i) = .Cells(found.Row, 2).Value
      UserForm1.ListBox2.Column(2, i) = .Cells(found.Row, 3).Value
      UserForm1.ListBox2.Column(3, i) = .Cells(found.Row, 5).Value
      UserForm1.ListBox2.Column(4, i) = .Cells(found.Row, 4).Value
   i = i + 1
   
      Set found = .FindNext(After:=found)
  If found.Address = ErsterTreffer Then Exit Do

    Loop
 
   Sheets("Tabelle1").Activate
  Application.ScreenUpdating = True
End With
fehler:
End Sub




Durchsucht die Tabelle nach Einträgen und füllt meine Listbox.
Nur sollte kein Fund vorhanden sein sollte er abbrechen.

Hab schon alles versucht
if then goto usw. ab ich schaffs nicht.

Könnt ihr mir helfen?


Beiträge aus den Excel-Beispielen zum Thema "Such in Spalte Ergebnis in listbox"