2015-09-10 10 views
6

は、私はこのようなIF文を記述しようとしています:IF文の値のリストをチェックする方法は?

if var [is any of 1,4,5,6,12] then do stuff 

しかし、私は以外のVBAで、このための構文は、知らない:少し不器用なようだ

if var=1 or var=4 or var=5... 

を。別の方法がありますか?

+0

は 'case'文を選択 – psychicebola

+0

@psychicebolaを使用し、この文では、それまで否定を持っていますか? "else"のようなもの?または、「ではない」と同等のもの...? –

+0

私の回答コード – psychicebola

答えて

8

あなたはSelect Caseステートメントを使用することができます。

select case var 
case 1,4,5,6,12 
    'do something 
case else 
    'alternative 
end select 
+0

ELSEステートメントはIFステートメント –

+0

の中になければ動作しません。それはbo 'case else' – psychicebola

1

あなたは番号のリストを作ることができ、その後、forループでは、これらを比較する:

dim newNumber as Integer 
dim compareList as new List Of(int) 

for count as integer = 0 to compareList.count - 1 
    if newNumber = compareList(nCount) 
     'Do Stuff 
    end if 
next 

これは私がやりたいことをやっての簡単な方法ですが、あなたの場合、パフォーマンスが集中的かもしれませんリストが本当に大きい/あなたは "if"ループで多くのコードをしたいと思う。

関連する問題