2

简单的问题在这里。
我目前在我的程序中使用它:

If LCase(inp_rng.Offset(1, 0).Value) = "street" Or LCase(inp_rng.Offset(1, 0)) = "ave." Then
score = score - 50
End If

它显然不干净,但我可以找到一种方法只用一句话来表达。编写这样的东西的编程方式是什么:

If LCase(inp_rng.Offset(1,0).Value = ("street", "ave.", "road", "...", etc.) Then
'do something
End If

提前致谢!

4

2 回答 2

2

您可以改用 Select Case 语句:

i = LCase(inp_rng.Offset(1,0).Value
Select Case i
    Case "street", "ave.", "road"
        'do something
    Case Else
        'do something
End Select

或者,您可以在数组中填充所有可能的答案并在数组中搜索匹配项。

于 2013-07-24T06:59:06.447 回答
1

您可以使用Filter()数组功能

http://msdn.microsoft.com/en-us/library/office/aa164525(v=office.10).aspx

于 2013-07-24T06:40:55.693 回答