VBA 연산자 및 기본 제공 함수

Excel VBA 문

Excel에서 VBA 코드를 작성할 때 모든 단계에서 기본 제공 연산자 집합이 사용됩니다. 이러한 연산자는 수학, 문자열, 비교 및 ​​논리 연산자로 나뉩니다. 다음으로 각 연산자 그룹에 대해 자세히 살펴보겠습니다.

수학 연산자

주요 VBA 수학 연산자는 아래 표에 나열되어 있습니다.

표의 오른쪽 열은 괄호가 없는 경우 기본 연산자 우선 순위를 보여줍니다. 표현식에 괄호를 추가하여 VBA 문이 실행되는 순서를 원하는 대로 변경할 수 있습니다.

운영자동작우선

(1 – 최고, 5 – 최저)

^지수 연산자1
*곱셈 연산자2
/나눗셈 연산자2
나머지 없이 나누기 – 나머지 없이 두 숫자를 나눈 결과를 반환합니다. 예를 들어, 74 결과를 반환합니다 13
용기모듈로(나머지) 연산자 – 두 숫자를 나눈 후 나머지를 반환합니다. 예를 들어, 8 대 3 결과를 반환합니다 2.4
+덧셈 연산자5
-빼기 연산자5

문자열 연산자

Excel VBA의 기본 문자열 연산자는 연결 연산자입니다. & (병합):

운영자동작
&연결 연산자. 예를 들어, 표현식 «A» & «B» 결과를 반환합니다 AB.

비교 연산자

비교 연산자는 두 숫자 또는 문자열을 비교하고 유형의 부울 값을 반환하는 데 사용됩니다. 부울 (참 또는 거짓). 다음 표에는 기본 Excel VBA 비교 연산자가 나열되어 있습니다.

운영자동작
=같이
<>같지 않음
<적게
>
<=작거나 같음
>=크거나 같음

논리 연산자

비교 연산자와 같은 논리 연산자는 유형의 부울 값을 반환합니다. 부울 (참 또는 거짓). Excel VBA의 주요 논리 연산자는 아래 표에 나열되어 있습니다.

운영자동작
Audiencegain과결합 연산, 논리 연산자 И. 예를 들어, 표현식 A와 B 돌아올거야. 참된만약 A и B 둘 다 평등하다 참된, 그렇지 않으면 반환 거짓.
Or분리 연산, 논리 연산자 OR. 예를 들어, 표현식 A 또는 B 돌아올거야. 참된만약 A or B 같다 참된, 그리고 돌아올 것이다 거짓만약 A и B 둘 다 평등하다 거짓.
아니부정 연산, 논리 연산자 않습니다.. 예를 들어, 표현식 A 아님 돌아올거야. 참된만약 A 균일하게 거짓, 또는 반환 거짓만약 A 균일하게 참된.

위의 표에는 VBA에서 사용할 수 있는 모든 논리 연산자가 나열되어 있지 않습니다. 논리 연산자의 전체 목록은 Visual Basic 개발자 센터에서 찾을 수 있습니다.

내장 함수

VBA에는 코드를 작성할 때 사용할 수 있는 많은 내장 함수가 있습니다. 다음은 가장 일반적으로 사용되는 몇 가지입니다.

함수동작
ABS주어진 숫자의 절대값을 반환합니다.

예:

  • 복근(-20) 값 20를 반환합니다.
  • 복근(20) 값 20를 반환합니다.
Chr매개변수의 숫자 값에 해당하는 ANSI 문자를 반환합니다.

예:

  • Ch(10) 줄 바꿈을 반환합니다.
  • Ch(97) 문자를 반환 a.
날짜현재 시스템 날짜를 반환합니다.
날짜추가지정된 날짜에 지정된 시간 간격을 추가합니다. 함수 구문:

DateAdd(интервал, число, дата)

주장은 어디에 간격 주어진 시간 간격의 유형을 결정합니다 데이터 인수에 지정된 금액 번호.

논의 간격 다음 값 중 하나를 사용할 수 있습니다.

간격가치관
yyyyyear
q지구
m
y올해의 날
d
w요일
ww
h시간
n
s

예:

  • DateAdd(<d>, 32, <01년 01월 2015일>) 32년 01월 01일 날짜에 2015일을 더하여 02년 02월 2015일 날짜를 반환합니다.
  • DateAdd(<ww>, 36, <01년 01월 2015일>) 36년 01월 01일 날짜에 2015주를 더하고 09년 09월 2015일 날짜를 반환합니다.
날짜차이주어진 두 날짜 사이의 지정된 시간 간격 수를 계산합니다.

예:

  • DateDiff(«d», «01/01/2015», «02/02/2015») 01년 01월 2015일과 02년 02월 2015일 사이의 일 수를 계산하고 32를 반환합니다.
  • DateDiff(«ww», «01/01/2015», «03/03/2016») 01년 01월 2015일과 03년 03월 2016일 사이의 주 수를 계산하고 61을 반환합니다.
주어진 날짜의 날짜에 해당하는 정수를 반환합니다.

예: 일(«29/01/2015») 숫자 29을 반환합니다.

시간주어진 시간의 시간 수에 해당하는 정수를 반환합니다.

예: 시간(«22:45:00») 숫자 22을 반환합니다.

InStr정수와 두 개의 문자열을 인수로 사용합니다. 정수로 지정된 위치에서 검색을 시작하여 첫 번째 문자열 내에서 두 번째 문자열의 발생 위치를 반환합니다.

예:

  • InStr(1, "검색어입니다.", "단어") 숫자 13을 반환합니다.
  • InStr(14, "여기에 검색어가 있고 여기에 다른 검색어가 있습니다.", "단어") 숫자 38을 반환합니다.

참고 : 숫자 인수를 지정하지 않을 수 있습니다. 이 경우 함수의 두 번째 인수에 지정된 문자열의 첫 번째 문자부터 검색이 시작됩니다.

INT주어진 숫자의 정수 부분을 반환합니다.

예: 정수(5.79) 결과 5를 반환합니다.

이스다테반품 참된주어진 값이 날짜인 경우 또는 거짓 – 날짜가 아닌 경우.

예:

  • IsDate(<01년 01월 2015일>) 반품 참된;
  • 날짜(100) 반품 거짓.
오류반품 참된주어진 값이 오류인 경우, 또는 거짓 – 오류가 아닌 경우.
누락선택적 프로시저 인수의 이름은 함수에 인수로 전달됩니다. 누락 반품 참된해당 프로시저 인수에 대해 값이 전달되지 않은 경우.
이수 체반품 참된주어진 값을 숫자로 처리할 수 있으면 그렇지 않으면 반환 거짓.
좌회전주어진 문자열의 시작 부분부터 지정된 수의 문자를 반환합니다. 함수 구문은 다음과 같습니다.

Left(строка, длина)

어디에 는 원래 문자열이고 길이 문자열의 시작 부분부터 계산하여 반환할 문자 수입니다.

예:

  • 왼쪽("abvgdejziklmn", 4) 문자열 "abcg"를 반환합니다.
  • 왼쪽("abvgdejziklmn", 1) 문자열 "a"를 반환합니다.
문자열의 문자 수를 반환합니다.

예: 렌("abcdej") 숫자 7을 반환합니다.

주어진 날짜의 월에 해당하는 정수를 반환합니다.

예: 월(«29/01/2015») 값 1를 반환합니다.

중간주어진 문자열의 중간에서 지정된 수의 문자를 반환합니다. 함수 구문:

중반(, 스타트, 길이)

어디에 원래 문자열입니다 스타트 - 추출할 문자열의 시작 위치, 길이 추출할 문자의 수입니다.

예:

  • 중간("abvgdejziklmn", 4, 5) 문자열 "where"를 반환합니다.
  • 중간("abvgdejziklmn", 10, 2) 문자열 "cl"을 반환합니다.
주어진 시간의 분 수에 해당하는 정수를 반환합니다. 예시: 분(«22:45:15») 값 45를 반환합니다.
현재현재 시스템 날짜 및 시간을 반환합니다.
권리주어진 문자열의 끝에서 지정된 수의 문자를 반환합니다. 함수 구문:

오른쪽(, 길이)

어디에 는 원래 문자열이고 길이 주어진 문자열의 끝에서 계산하여 추출할 문자의 수입니다.

예:

  • 오른쪽(«abvgdezhziklmn», 4) 문자열 "clmn"을 반환합니다.
  • 오른쪽(«abvgdezhziklmn», 1) 문자열 "n"을 반환합니다.
둘째주어진 시간의 초 수에 해당하는 정수를 반환합니다.

예: 두 번째(«22:45:15») 값 15를 반환합니다.

제곱인수에 전달된 숫자 값의 제곱근을 반환합니다.

예:

  • 제곱(4) 값 2를 반환합니다.
  • 제곱(16) 값 4를 반환합니다.
Time현재 시스템 시간을 반환합니다.
유바운드지정된 배열 차원의 위 첨자를 반환합니다.

참고 : 다차원 배열의 경우 선택적 인수는 반환할 차원의 인덱스일 수 있습니다. 지정하지 않으면 기본값은 1입니다.

year주어진 날짜의 연도에 해당하는 정수를 반환합니다. 예시: 연도(«29/01/2015») 값 2015를 반환합니다.

이 목록에는 가장 일반적으로 사용되는 Excel Visual Basic 기본 제공 기능 중 일부만 포함되어 있습니다. Excel 매크로에서 사용할 수 있는 VBA 함수의 전체 목록은 Visual Basic 개발자 센터에서 찾을 수 있습니다.

댓글을 남겨주세요.