完成VBA查找功能以搜索两个搜索变量中的任何一个,然后选择出现的第一个

时间:2018-01-18 12:47:48

标签: excel vba excel-vba

我目前有以下内容:

Set FindRow = ThisWorkbook.Sheets("Schedule").Range("n1:"& ActiveCell.Address).Find(What:="Assembly", SearchDirection:=xlPrevious, MatchCase:=False)

我想做以下

Set FindRow = ThisWorkbook.Sheets("Schedule").Range("n1:"& ActiveCell.Address).Find(What:="Assembly" or "Component", SearchDirection:=xlPrevious, MatchCase:=False)

我希望它能够搜索程序集或组件,并停止搜索最先出现的任何内容。

由于

1 个答案:

答案 0 :(得分:1)

你可能会有各种变化。

如果您从N1开始,那么您可以使用整个列。

Evaluate("MIN(MATCH(""Assembly"",N:N,0),MATCH(""Component"",N:N,0))")

在vba中合并

    Sub Button1_Click()
    s = "N" & Evaluate("MIN(MATCH(""Assembly"",N:N,0),MATCH(""Component"",N:N,0))")
    MsgBox s
    Range(s).Select
    End Sub