Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
920to924
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
920to924
920to924
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Marko mit Suchfunktion

Marko mit Suchfunktion
31.10.2007 11:47:33
Fabian
Hallo!
Ich habe eine Frage. Und zwar habe ich folgendes Makro:

Private Sub CommandButton1_Click()
Dim rng As Range, rngSource As Range
Dim strFirst As String
Set rngSource = Sheets("H").Range("A2:D2000")
With ListBox1
.Clear
If TextBox1  "" Then
Set rng = rngSource.Find(TextBox1.Text, LookAt:=xlPart)
If Not rng Is Nothing Then
strFirst = rng.Address
Do
.AddItem rng(, 1).Text
.List(ListBox1.ListCount - 1, 1) = rng(, 2).Text
.List(ListBox1.ListCount - 1, 2) = rng(, 3).Text
.List(ListBox1.ListCount - 1, 3) = rng(, 4).Text
Set rng = rngSource.FindNext(rng)
Loop While Not rng Is Nothing And rng.Address  strFirst
End If
If .ListCount > 0 Then
Range("B27") = .ListCount & " Treffer"
Else
Range("B27") = "Kein Treffer"
End If
End If
End With
Set rng = Nothing
Set rngSource = Nothing
End Sub


Er sucht auf dem Blatt H in einem definiertem Bereich und gibt dann von dem Fundort die nächsten drei Spalten inkl. den gefundenen Text in einer Listbox aus.
Ich würde da gerne noch eine if Schleife einbauen. Und zwar folgendermaßen. Wenn du etwas in der Spalte B (auf Blatt H) findest dann gib mir in der ersten Spalte der Listbox die Spalte A auf dem Blatt H. Ansonsten kann es so bleiben.
Danke für eure Hilfe.
Gruß
Fabian

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Marko mit Suchfunktion
31.10.2007 13:03:00
Chaos
Servus Fabian,
wenn ich das richtig verstanden habe, dann so:

Private Sub CommandButton1_Click()
Dim rng As Range, rngSource As Range
Dim strFirst As String
Set rngSource = Sheets("H").Range("A2:D2000")
With ListBox1
.Clear
If TextBox1  "" Then
Set rng = rngSource.Find(TextBox1.Text, LookAt:=xlPart)
If Not rng Is Nothing Then
strFirst = rng.Address
Do
If rng.Column = 2 Then
.AddItem rng(, 1).Offset(0, -1).Text
.List(ListBox1.ListCount - 1, 1) = rng(, 1).Text
.List(ListBox1.ListCount - 1, 2) = rng(, 2).Text
.List(ListBox1.ListCount - 1, 3) = rng(, 3).Text
.List(ListBox1.ListCount - 1, 4) = rng(, 4).Text
Else
.AddItem rng(, 1).Text
.List(ListBox1.ListCount - 1, 1) = rng(, 2).Text
.List(ListBox1.ListCount - 1, 2) = rng(, 3).Text
.List(ListBox1.ListCount - 1, 3) = rng(, 4).Text
End If
Set rng = rngSource.FindNext(rng)
Loop While Not rng Is Nothing And rng.Address  strFirst
End If
If .ListCount > 0 Then
Range("B27") = .ListCount & " Treffer"
Else
Range("B27") = "Kein Treffer"
End If
End If
End With
End Sub


Gruß
Chaos

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige