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...
좀 어설픈 것 같은데요다른 방법이 있습니까?
Select Case 문을 사용할 수 있습니다.
select case var
case 1,4,5,6,12
'do something
case else
'alternative
end select
저는 '파티'에 조금 늦었지만, 다음은 어떻습니까?
If InStr(1, ",1,5,8", "," & lVal1, vbTextCompare) > 0 Then
'lVal1'이 1, 5 또는 8과 동일한지 확인합니다.
그리고.
If InStr(1, ",6,8,10,12", "," & lVal2, vbTextCompare) = 0 Then
'lVal2'가 6, 8, 10, 12와 같지 않은지 확인합니다.
쉼표 구분 기호가 없으면 첫 번째 예제에서 'lVal'이 이러한 값 중 하나를 사용할 수 있으면 '15' 또는 '58' 또는 '158'이 모두 일치하기 때문에 쉼표 구분 기호는 중요합니다.
확인할 값에 모호성이 있는 경우 사용하는 구분 기호에 주의해야 합니다.
마찬가지로, 발생할 값 범위에 대한 지식을 사용하여 첫 번째 문자열에서 선행 구분 기호의 투박함을 제거하고 구분 기호를 검색 값 앞에 연결할 수 있습니다.
숫자 목록을 만든 다음 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" 루프에서 많은 코드를 수행하려는 경우 성능 집약적이 될 수 있습니다.
언급URL : https://stackoverflow.com/questions/32503099/how-to-check-against-a-list-of-values-in-an-if-statement
'programing' 카테고리의 다른 글
Ruby 어레이: %w 대 %W (0) | 2023.06.18 |
---|---|
지정된 클래스의 계층 구조에 있는 모든 기본 클래스를 나열하시겠습니까? (0) | 2023.06.18 |
파이썬에서 openpyxl을 사용하여 Excel 스프레드시트에 행 삽입 (0) | 2023.06.18 |
여러 .csv 파일을 한 번에 가져오는 방법은 무엇입니까? (0) | 2023.06.18 |
cx_Oracle 및 예외 처리 - 모범 사례? (0) | 2023.06.18 |