私はキーワードのリストを持っており、1つのセルにこれらの単語のいずれかが含まれているかどうかを確認したいと考えています。たとえば、私のキーワードリストが(Cat、Dog、Turtle)の場合、関数は "Mr. Dogs Magic Land"の中を見ていればMATCHを返します。私は関数として使用するには良いUDFオンラインを見つけましたが、ループすると、キーワードリストのすべての単語をテストして#VALUEになります。最初の関数は私のループですが、2番目はインターネット上にあるUDFのマッチ関数です(申し訳ありませんがどこに行ったのか分かりません)。InStrなどの単語マッチ関数のバリエーションを無用に試しました。Excel VBAのルーピングワードマッチ機能
Function StringFind(rng(), source)
For I = LBound(rng) To UBound(rng)
StringFind = MyMatch(rng(I), source)
If StringFind = "MATCH" Then Exit Function
Next I
StringFind = "NO MATCH"
End Function
Function MyMatch(FindText As String, WithinText As Variant) As String
'
Dim vntFind As Variant
Dim vntWithin As Variant
For Each vntFind In Split(UCase(FindText), " ")
If Len(Trim(vntFind)) > 0 Then
For Each vntWithin In Split(UCase(WithinText), " ")
If Len(Trim(vntWithin)) > 0 Then
If vntFind = vntWithin Then
MyMatch = "MATCH"
Exit Function
End If
End If
Next
End If
Next
MyMatch = "NO MATCH"
End Function
はい、私はそれがループを出た後、私はstringfind =「NO MATCH」の部分は必要ありません実現が、それはアイデア... – postelrich