如果语句条件错误 - 对所有条件都返回true [重复]

问题描述 投票:0回答:1

DocNum被设置为Double,我有数字,当它们落入这些桶时应该触发不同的代码使用。我无法确定为什么它只使用if stmt而不是elseif。 stmt每次都返回true ...

示例:1003xxxxx应返回true并使用if stmt代码,1900xxxxxx应返回false并使用elseif代码。但是1900xxxxxx正在使用if stmt代码......

它很可能是通配符,但我假设在假设剩余数字之前需要满足之前的数字。

If DocNum = "1003*" Or "1004*" Or "1005*" Then
'Some Code
ElseIf DocNum = "19*" Or "17*" Or "22*" Or "20*" Then
'Some Code
excel vba
1个回答
-2
投票

试过这解决了:

If DocNum = "1003*" Or _
   DocNum = "1004*" Or _
   DocNum = "1005*" Then
 'Some Code
ElseIf
   DocNum = "19*" Or _
   DocNum = "17*" Or _
   DocNum = "22*" Or _
   DocNum = "20*" Then
 'Some Code

要么

Select Case DocNum
   Case "1003*","1004*","1005*"
   'Some Code
   Case "19*","17*","22*","20*"
   'Some Code
   Case Else
   'Some Code Case None
End Select
© www.soinside.com 2019 - 2024. All rights reserved.