Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
628to632
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
628to632
628to632
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Suchfunktion

Suchfunktion
30.06.2005 21:39:58
Dani
Hallo
Ich hab schon wieder ein Problem. Ich habe da eine Suche gemacht.
Das Wort wird nur in der Spalte F gesucht. Ist es auch möglich eine Suche zu machen, die in Spalte F z.B. einen Namen sucht und in der Spalte H den Ort sucht und nur wenn Beides zustimmt das Resultat in die Zelle schreibt? Danke vielmals.
With Worksheets("Datenimport").Range("F:F")
a = 1
Set c = .Find(kundensuche.txbx_kurzbezeichnung.Value)
If Not c Is Nothing Then
firstaddress = c.Address
Do
a = a + 1
Sheets("Kundensuche").Cells(a, 2) = c
Sheets("Kundensuche").Cells(a, 1) = c.Offset(0, -5)
Sheets("Kundensuche").Cells(a, 3) = c.Offset(0, 5) & " " & c.Offset(0, 4)
Sheets("Kundensuche").Cells(a, 4) = c.Offset(0, 10) & " " & c.Offset(0, 2)
Sheets("Kundensuche").Cells(a, 5) = c.Offset(0, 9)
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address firstaddress
End If
If c Is Nothing Then
MsgBox "Nichts gefunden"
End If
End With

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Suchfunktion
01.07.2005 08:51:18
WernerB.
Hallo Dani,
hier mal ein Lösungsversuch (ungetestet).
Allerdings ist mir Deine Do-Loop-Schleife etwas suspekt; ich halte es für sehr unwahrscheinlich, dass diese mehr als einen Durchlauf macht.
Es sieht so aus, als ob Du eine wiederholte Suche durchführen willst (?), aber m.E. (ohne es jedoch getestet zu haben) kann das so nicht funktionieren.
Aber vielleicht irre ich mich da?
With Worksheets("Datenimport").Range("F:F")
a = 1
Ort = "El Arenal"
Set c = .Find(kundensuche.txbx_kurzbezeichnung.Value)
If Not c Is Nothing Then
firstaddress = c.Address
If c.Offset(0, 2).Text = Ort Then
Do
a = a + 1
Sheets("Kundensuche").Cells(a, 2) = c
Sheets("Kundensuche").Cells(a, 1) = c.Offset(0, -5)
Sheets("Kundensuche").Cells(a, 3) = c.Offset(0, 5) & " " & c.Offset(0, 4)
Sheets("Kundensuche").Cells(a, 4) = c.Offset(0, 10) & " " & c.Offset(0, 2)
Sheets("Kundensuche").Cells(a, 5) = c.Offset(0, 9)
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address firstaddress
Else
MsgBox "Ort nicht gefunden !"
End If
Else
MsgBox "Nichts gefunden !"
End If
End With
Viel Erfolg wünscht
WernerB.
P.S.: Dieses Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter !
Anzeige
AW: Suchfunktion
01.07.2005 11:42:59
Dani
Hallo WernerB.
Das funktioniert super, danke. Jetzt hab ich aber noch eine Frage. Kann man den Text beim Ort in der Suche auch abkürzen z.B. mit *. Es gibt einen Ort Namens Hergiswil in der Liste ist dieser Ort aber mit Hergiswil NW eingetragen. Und wenn ich nur nach Hergiswil suche wird nie was gefunden.
Gruss Dani
AW: Suchfunktion
01.07.2005 12:02:30
WernerB.
Hallo Dani,
versuche es mal so:
Ersetze diese Zeile
If c.Offset(0, 2).Text = Ort Then
durch diese Zeile:
If instr(c.Offset(0, 2).Text, Ort) &gt 0 Then
Gruß
WernerB.
AW: Suchfunktion
01.07.2005 14:47:12
Dani
Geht so leider nicht...
AW: Suchfunktion
02.07.2005 16:54:11
WernerB.
Hallo Dani,
und geht es so?
If InStr(Ort, c.Offset(0, 2).Text) &gt 0 Then
Gruß
WernerB.
Anzeige
AW: Suchfunktion
03.07.2005 20:34:30
Dani
Hallo
Jetzt funktionierts! Und zwar mit:
If instr(c.Offset(0, 2).Text, Ort) &gt 0 Then
diese Zeile musse nur nach "Do" stehen.
Danke.
Gruss Dani

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige