これは間違っていますのでごめんなさい。私は、変数aが、その後、いくつかの整数の集合の要素であるならば、私が書いた場合...それがうまくいく旨Ifステートメントを持つようにしたい:Excel VBAで条件文の可能な値を列挙できますか?
= 1,6,12,19場合、
または私は= 1または= 6または= 12または= 19次に
これは間違っていますのでごめんなさい。私は、変数aが、その後、いくつかの整数の集合の要素であるならば、私が書いた場合...それがうまくいく旨Ifステートメントを持つようにしたい:Excel VBAで条件文の可能な値を列挙できますか?
= 1,6,12,19場合、
または私は= 1または= 6または= 12または= 19次に
いいえ、あなたはif a=1,6,12,19 Then
としてそれを書くことはできませんが、あなたが使用できるいくつかの選択肢がある場合
を記述する必要があります彼らはanswers to this previous questionでカバーされています。これは私がほとんどの場合にお勧めするものです。
select case userID
case 1,2,3,4,5,6
' do something
end select
2つ以上の条件がある場合、私はいつも 'select case'を使います。それは美しいものです! 'else else'を忘れないでください。それは必須ではありませんが、あなたの 'end select'の前にそれを貼り付けるのは良い習慣ですので、オプションがあることを忘れないでください:) – Flibertyjibbet
InStr
機能は、それが区切られたオプションを含む文字列内の区切られた部分文字列として扱うことができます。
if cbool(instr(1, "x1x2x3x4x5x6x", format(a, "x0x"))) then
'a is a number between 1 and 6
debug.Print a & " is in 1,2,3,4,5,6"
end if
あなたはそれを試してみましたApplication.Match()
方法
if Not IsError(Application.Match(a,array(1,6,12,19),0) Then
your code
End If
を使用することができますか? – Comintern
case文を使用できます。例えば。 '公共の機能テスト(A) のSelect Case 1、2、3、4、5、6 は「[関数の中で何か エンドを選択SQLに相当VBA]の 終了Function' – RyanL
可能な複製を行う" ケース(http://stackoverflow.com/questions/17553700/vba-equivalent-to-sql-in-function) – Comintern