VBAfunctionsearch错误

我正在尝试写一个名为stringExists的布尔函数。 该函数有两个参数:名为rng的Range和名为srch的String。 如果在范围rng中findstringsrch,则函数返回True。

这是迄今为止的代码:

Function stringExists(rng As Range, srch As String) As Boolean if srch isFound in rng then stringExists = True else stringExists = False End Function 

但是,如果srch isFound的行在我的vba编辑器中突出显示为红色。 我很确定我有这个代码的基础知识是正确的,但是我很难理解我的错误是什么。 希望能在这个问题上得到一些指导。 谢谢 !

这里编辑是我到目前为止:

 Sub test() Dim rng As Range Dim srch As String srch = InputBox("Enter the string you want to search for: ") Set rng = Range("A1:A100") MsgBox "The phrase is" & _ stringExists(rng, srch) End Sub Function stringExists(rng As Range, srch As String) As Boolean If InStr(rng, srch) Then stringExists = True Else stringExists = False End If End Function 

你可以这样试试

 Function stringExists(rng As Range, srch As String) As Boolean If InStr(rng, srch) Then stringExists = True Else stringExists = False End If End Functio 

如果您将单个单元格作为第一个parameter passing,上面的函数将起作用。 如果您的范围包含多个单元格,请尝试像这样的function…

 Function stringExists(rng As Range, srch As String) As Boolean Dim cell As Range For Each cell In rng If InStr(cell, srch) Then stringExists = True Exit For Else stringExists = False End If Next cell End Function