Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1620to1624
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
Inhaltsverzeichnis

Mehrere Begriffe unter .Find

Mehrere Begriffe unter .Find
30.04.2018 16:18:05
Tobi
Hi,
ich suche mit .Find(what:="Berlin") nach einem Wort, wenn das Wort in der Spalte 16 vorkommt, ist die if Anweisung Wahr.
Funktioniert ohne Probleme.
Nun möchte ich aber nach mehreren Wörtern suchen und zwar als ODER.
Also ungefähr sowas:
.Find(what:="Berlin" OR "Frankfurt" OR Stuttgart)
Leider funktioniert es so natürlich nicht.
Habt ihr vielleicht eine Ahnung?
Danke euch.

Set Result = xlSheet.Cells(y, 16).Find(what:="Berlin")
If Not Result Is Nothing Then

'Tu was...
End If

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mehrere Begriffe unter .Find
30.04.2018 16:26:28
Mullit
Hallo,
eine Möglichkeit wäre triple-Find...
Dim Result1 As Range, Result2 As Range, Result3 As Range
Set Result1 = xlSheet.Cells(y, 16).Find(what:="Berlin")
Set Result2 = xlSheet.Cells(y, 16).Find(what:="Frankfurt")
Set Result3 = xlSheet.Cells(y, 16).Find(what:="Stuttgart")
If Not (Result1 Is Nothing And Result2 Is Nothing And Result3 Is Nothing) Then
'Tu was...
End If

Gruß, Mullit
AW: Mehrere Begriffe unter .Find
30.04.2018 16:35:46
Tobi
Hi, zunächst Danke für die schnelle Antwort.
Das wäre natürlich eine Möglichkeit.
Was ich allerdings vergessen habe zu erwähnen ist, dass es nicht bei 3 Wörtern bleiben wird, sondern eher mehrere hundert.
Wenn es möglich ist, würde ich die Wörter lieber unter einem "Result" suchen, damit ich keine riesige If Anweisung mit hunderten Results vergleichen muss.
Anzeige
AW: Mehrere Begriffe unter .Find
30.04.2018 16:48:57
Mullit
Hallo,
hmm ja, dazu müsste man vielleicht mal wissen,was in der If-Anweisung mit der Fundstelle weiter passieren soll, wenn die Menge zu groß wird liest Du entweder alles in Variant-Arrays ein und durchsuchst diese, oder Du schreibst Dir noch mit Find eine eigene Function in der Art:
Dim Result As Range
Set Result = fncMultipleFind("Berlin", "Frankfurt", "Stuttgart", "München")
If Not Result Is Nothing Then
'Tu was...
End If
Private Function fncMultipleFind(ParamArray ppavntNames() As Variant) As Range
Dim objCell As Range
Dim ialngIndex As Long
For ialngIndex = 0 To UBound(ppavntNames)
Set objCell = xlSheet.Cells(y, 16).Find(what:=ppavntNames(ialngIndex))
If Not objCell Is Nothing Then
Set fncMultipleFind = objCell
Set objCell = Nothing
Exit For
End If
Next
End Function

Gruß, Mullit
Anzeige
AW: Mehrere Begriffe unter .Find
30.04.2018 16:52:37
Tobi
Danke sehr, werde ich mal versuchen.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige