연산자는 사칙연산과 같은 계산에 필요한 기호들을 말합니다. 제어문은 VBA는 기본적으로 문장 순서대로 프로그램이 진행됩니다. 하지만 때에 따라서 순서를 변경해야 하는 경우가 생깁니다. 이때 프로그램의 진행 순서를 변경하는데 사용하는 것이 제어문입니다.
1. 연산자
연산자 기호들을 아래 표에 정리해 보았습니다.
종류 | 기능 | 사용예 | 결과 | |
대입 연산자 | = | 변수나 속성 값 지정 | a = 1 | 1 |
문자열 연결 연산자 | & | 문자열 결합 | a="대한" & "민국" | 대한민국 |
+ | 문자열 결합 | a="대한" + "민국" | 대한민국 | |
산술 연산자 | + | 더하기 | a= 5 + 3 | 8 |
- | 빼기 | a= 5 - 3 | 2 | |
* | 곱하기 | a= 5 * 3 | 15 | |
/ | 나누기 | a= 6 / 3 | 2 | |
\ | 몫 | a= 6 \ 3 | 2 | |
Mod | 나머지 | a= 5 Mod 3 | 2 | |
^ | 지수 | a= 5 ^ 3 | 125 | |
비교 연산자 | > | 크다 | a= 5 > 3 | True |
>= | 크거나 같다 | a= 5 >= 3 | True | |
< | 작다 | a= 5 < 3 | False | |
<= | 작거나 같다 | a= 5 <= 3 | False | |
= | 같다 | a= 5 = 3 | False | |
<> | 같지 않다 | a= 5 <> 3 | True | |
Is | 두 개의 개체나 개체형 변수 비교 | a= 셀1 Is 셀1 | True | |
Like | 두 개의 문자열 비교 | a= "F" Like "[A-G]" | True | |
논리 연산자 | Not | 논리부정 | a= Not 5 = 3 | True |
And | 논리곱 | a= 5 > 3 And 3 < 1 | False | |
Or | 논리합 | a= 5 > 3 Or 3 < 1 | True | |
Xor | 배타적 논리합 | a= 5 > 3 Xor 3 < 1 | True | |
Eqv | 논리 등가 | a= 5 > 3 Eqv 3 < 1 | False | |
Imp | 논리 내포 | a= 5 > 3 Imp 3 < 1 | False |
위 표의 연산자 중에서 Is, Like, 그리고 논리 연산자에 대해서 좀 더 알아보겠습니다.
1.1 Is 연산자
Is 연산자는 두 개체나 개체형 변수를 비교하는 연산자입니다.
a = ActiveSheet Is Sheets(2)
☞ 현재 활성화되어 있는 워크시트가 Sheet(2)인지를 확인하여 맞으면 True, 틀리면 False를 반환합니다.
1.2 Like 연산자
Like 연산자는 두 개의 문자열을 비교하는 연산자입니다.
결과값 = 문자열 Like 패턴
패턴에서 사용되는 기호들은 다음과 같습니다.
패턴에 사용되는 기호 | 설명 |
? | 임의의 한 문자 |
* | 모든 문자 |
# | 임의의 한 숫자 |
[문자 리스트] | 문자 리스트에 지정한 문자 중 한 문자 |
[!문자 리스트] | 문자 리스트에 지정한 문자 이외의 한 문자 |
예)
"대한민국" Like "대?" ; False
☞ "대"로 시작하는 문자열이며 ?가 하나이므로 두 글자인지 확인하는 코드
1 Like "##" ; False
☞ ##이 두 개이므로 두자리 숫자인지 확인하는 코드
"C" Like "[A-G]" ; True
☞ C가 A ~ G 사이에 있는 문자인지를 확인하는 코드
"C" Like "[!A-G]" ; False
☞ C가 A ~ G 사이에 있는 문자들 이외의 문자인지 확인하는 코드
1.3 논리 연산자
논리 연산자에 대한 설명은 다음과 같습니다.
논리 연산자 | 설명 |
Not | 논리식이 False이면 True를 True이면 False를 반환 |
And | 두 논리식이 모두 True이면 True를 하나라도 False이면 False를 반환 |
Or | 두 논리식 중에서 하나라도 True이면 True를 모두 False이면 False를 반환 |
Xor | 두 논리식 중에서 하나만 True이면 True를 모두 False이면 False를 반환 |
Eqv | 두 논리식이 모두 True이거나 False이면 True를 그렇지 않으면 False를 반환 |
Imp | 두 논리식 중에서 앞의 논리식이 True이고 위의 논리식이 False일 때만 False를 그렇지 않으면 True를 반환 |
'엑셀 > VBA' 카테고리의 다른 글
VBA로 간단한 입력과 출력 실행해보기 (0) | 2021.07.07 |
---|---|
VBA를 작성하여 엑셀 개체 다루기 (0) | 2021.07.05 |
VBA 연산자와 제어문에 대해 알아보기 II (0) | 2021.07.05 |
엑셀 VBA 변수와 상수에 대하여 알아보기 (0) | 2021.07.01 |
엑셀에서 VBA 프로그램 작성하기 (0) | 2021.06.30 |