강좌 > 엑셀중급강좌 > 수식다루기 > 엑셀 수식 연산자와 연산 우선순위

엑셀 수식 연산자와 연산 우선순위

수식에 사용되는 연산자

이번 글에서는 엑셀 수식의 구성, 입력, 편집에 이어서 수식에 사용되는 연산자에 대해 살펴보겠습니다. 엑셀 연산자는 크게 4종류가 있으며 연산자별로 계산이 실행되는 순위가 정해져 있습니다.

실습용 엑셀파일 다운로드 :엑셀수식연산자와_연산우선순위.xlsx

 

산술 연산자

산술 연산자는 6개가 있습니다.

연산자 용도 사용 예
+ 더하기 =10+20+30 => 60
- 빼기 =100-30 => 70
*(별표) 곱하기 =10*10 => 100
/(슬래쉬) 나누기 =10/2 => 5 (10을 2로 나눈값인 5가 표시됨)
% 백분율 =50% => 0.5 (셀 표시형식이 백분율이면 50%로 표시됨)
=50%*10 => 5 (셀 표시형식이 백분율이면 500%로 표시됨)
^(캐럿) 제곱 =5^2 => 25 (5의 제곱인 25가 표시됨)

 

비교 연산자

비교 연산자는 간단해 보이지만 잘못쓰는 경우가 많아서 수식 오류가 자주 발생합니다. 사용 예를 보고 연습해 보세요.

연산자 의미 사용 예
= 같음 "=100" => 100인
> ~보다 큼 ">100" => 100보다 큰
< ~보다 작음 "<100" => 100보다 작은(100 미만)
>= ~보다 크거나 같음 ">=100" => 100보다 크거나 같은(100 이상)
<= ~보다 작거나 같음 "<=100" => 100보다 작거나 같은(100 이하)
<> 같지 않음 "<>100" => 100이 아닌

 

실제 수식에서 '비교 연산자'를 어떻게 쓰는지 더 알아보겠습니다.

다음과 같이 거래처별 상품의 판매실적 자료가 있을 때 SUMIF 함수로 특정 조건의 합계를 구해 보겠습니다.

SUMIF 함수로 연산자 알아보기

 

1) 판매금액이 6만원 이상인 것의 판매금액 합계 구하기

=SUMIF(E5:E12,">=60000",E5:E12) => 1,900,000원

수식에서 비교연산자 '>='를 사용했습니다.
수식에서 비교연산자와 값을 결합할 때는 아래와 같이 반드시 쌍따옴표로 묶어야 합니다.
">=60000"

아래와 같이 따옴표로 묶지 않으면 오류가 발생합니다.
=SUMIF(E5:E12,>=60000,E5:E12) => 오류 발생

 

2) 판매금액이 6만원인 것의 판매금액 합계 구하기

=SUMIF(E5:E12,"=60000",E5:E12) => 120,000원

수식에서 비교연산자 '='를 사용했습니다. 위와 마찬가지로 반드시 쌍 따옴표로 묶어야 합니다.
"=60000"

등호연산자를 사용할 때는 다음과 같이 등호를 생략할 수 있습니다.
=SUMIF(E5:E12,60000,E5:E12) => 120,000원
조건이 숫자만으로 구성되므로 쌍따옴표를 생략할 수 있습니다.

 

3) 상품이 '노트'인 것은 판매금액 합계 구하기

=SUMIF(D5:D12,"=노트",E5:E12) => 960,000원

숫자와 마찬가지로 텍스트도 비교연산자를 이용하여 비교할 수 있습니다.
"=노트"

텍스트도 등호연산자를 사용할 때는 다음과 같이 등호를 생략할 수 있습니다.
=SUMIF(D5:D12,"노트",E5:E12) => 960,000원

 

텍스트 연결 연산자

&(앰퍼샌드) : 두 개의 값을 연결하여 하나의 연속된 텍스트를 만듭니다.
="홍익"&"문고" => '홍익문고'

다음 그림과 같이 &(앰퍼샌드)는 수식에서 비교 연산자와 값을 연결할 때 많이 사용합니다.

거래처별 판매실적에서 금액 기준보다 큰값 합계를 구하려면 [E14] 셀에 다음 수식을 입력합니다.
=SUMIF(E5:E12,">100000",E5:E12) => 1,700,000
이 수식은 10만원보다 크다는 것을 표현하기 위해 ">100000"를 입력했습니다.

만약 10만원을 수식에 직접 입력하지 않고 [E16] 셀에 입력된 값을 참조하여 금액 기준보다 큰값 합계를 구하려면 [E18] 셀에 다음 수식을 입력합니다. ">" 연산자와 [E16]을 &(앰퍼샌드)로 연결한 형태입니다.
=SUMIF(E5:E12,">"&E16,E5:E12) => 1,700,000

위 수식을 다음과 같이 &(앰퍼샌드)를 사용하지 않고 수식을 입력하면 원하는 결과가 나오지 않습니다.
=SUMIF(E5:E12,">E16",E5:E12) => 0
">E16"으로 입력하면 [E16] 셀을 참조하여 10만원 이상인 것만 더하는 것이 아니라 ">E16" 전체를 텍스트로 인식하여 숫자 비교가 되지 않고 0을 반환합니다.

=SUMIF(B5:B12,">="&DATE(2021,8,1),E5:E12) => 660,000원
판매실적에서 '8월 1일부터 판매된 것의 판매금액 합계'를 구할 때는 연산자와 DATE함수를 연결하기 위해 &(앰퍼샌드)를 사용합니다.

 

참조 연산자

  • :(콜론) : 셀과 셀 사이의 모든 범위를 연결하여 하나의 참조를 만드는  범위 연산자
    아래 그림에서 SUM함수의 인수 'B2:B5' 내부의 콜론은 [B2]셀부터 [B5]셀까지의 모든 범위를 연결하여 하나의 참조로 만들어 주는 역할을 합니다.
    엑셀 범위연산자 콜론

 

  • ,(쉼표) : 여러 셀을 하나의 참조로 결합하는 결합 연산자
    아래 그림에서 SUM함수의 인수 'B2:B5,D2:D3,D5' 내부의 쉼표는 떨어진 범위를 참조하여 하나의 참조로 만들어 주는 역할을 합니다.
    엑셀 결합연산자

 

  • " "(공백) : 두 범위의 공통된 셀을 참조하는 교차 연산자
    아래 그림에서 SUM함수의 인수 'B2:C4 C3:D5' 내부의 공백은 두 범위의 공통된 셀을 참조하도록 해 줍니다.
    두 범위 공통된 셀(겹치는 셀)은 [C3],[C4]입니다. 따라서 =SUM(B2:C4 C3:D5)은 130을 구해줍니다.
    엑셀 교차 연산자

 

수식에서 계산이 실행되는 순서

입력된 수식이 다음과 같다고 했을 때 결과가 어떻게 될까요?

=5-5-10 => ?

고민할 것도 없이 간단한 수식입니다. 순서대로 계산하면 됩니다. 5에서 5을 빼면 0이 되고, 0에서 10을 빼면  최종 결과는 -10이 됩니다.

 

=10+5*5 => ?

순서대로 계산하면 10+5 를 하면 15가 되고 15를 5와 곱하면 75가 될까요?

연산자 우선순위에 의해 덧셈보다 곱셈이 먼저 계산이 되어야 하므로 먼저 5에 5를 곱해서 25가 구해지고 25에 10을 더하면  최종결과는 35가 됩니다. 엑셀의 수식은 기본적으로 왼쪽에서 오른쪽 순서로 계산이 되지만 여러 연산자가 섞여 있을 경우에는 왼쪽, 오른쪽 관계없이 연산자 우선 순위에 따라서 계산됩니다.

위의 수식은 혼란을 방지하게 위해 다음과 같이 고쳐쓰는 것이 좋습니다. 계산의 순서가 헷갈릴 수 있는 경우에는 가능하면 괄호로 묶어주는 것이 좋습니다. 곱셈 부분을 괄호로 묶으니 누가봐도 5와 5를 곱한다는 사실을 알 수 있습니다.

=10+(5*5) => 35

 

연산자 우선 순위

연산자별 계산 우선 순위는 다음 표와 같습니다. 참조 연산자가 우선순위가 가장 높고, 비교 연산자가 우선 순위가 가장 낮습니다.

참조 연산자 > 산술 연산자 > 연결 연산자 > 비교 연산자

우선순위 연산자 종류 연산자 비고
1 참조 :(콜론)
2 " "(공백)
3 ,(쉼표)
4 산술 –(음수) 음수(예: –1)
5 % 백분율
6 ^ 거듭제곱
7 *, /
8 +,  –
9 연결 & 두 개의 텍스트 문자열 연결
10 비교 =
<
>
<=
>=
<>

수식에서 괄호 사용하기

위에서도 잠깐 살펴 보았지만 다음과 같은 수식이 있다고 할 때 어떤 순서로 계산이 될지 상당히 혼란스럽습니다.

=3^2+10-5*2/2-10 => ?

자세히 들여다 보면 연산자 우선순위에 의해 거듭제곱, 곱셈, 나눗셈이 먼저 수행되고 덧셈, 뺄셈이 다음으로 수행된다는 것을 알 수 있지만 많이 번거롭습니다.

이때는 연산 우선순위를 '가장 최우선 순위'로 바꿔주는 괄호를 사용하면 편리합니다. 수식에서 괄호로 묶은 부분이 있으면 가장 먼저 계산이 되고 누가 봐도 수식을 알기 보기 쉽도록 만드는 장점이 있습니다.

다음과 같이 괄호를 사용하면 계산의 순서를 명확히 표현해 주므로 혼란스럽지 않고 훨씬 편리합니다.

=(3^2)+10-((5*2)/2)-10 => 4

 


엑셀 수식 강좌 

[ 수식 다루기 ]

[ 엑셀에서 입력과 표시방법 ]

[ 수식에서 셀과 범위 참조 방식 ]

[ 엑셀을 제대로 쓰는 데이터처리 ]

[ 엑셀 이름정의와 표기능 ]

[ 수식을 분석하고 오류 해결하기 ]

 

“엑셀 수식 연산자와 연산 우선순위”의 2개의 댓글

  1. 김야옹

    우연히 들어왔는데 아주 기본 원리부터 상세히 적혀있어 도움이 되겠습니다. 감사합니다. 예제파일이 같이 있으면 훨씬 더 이해가 빠를 것 같네요.

    1. 안녕하세요. 의견감사드립니다.
      예제 파일 작성하여 본문에 링크 걸어두었습니다.
      감사합니다.

댓글 달기

이메일 주소는 공개되지 않습니다.

Scroll to Top
%d 블로거가 이것을 좋아합니다: