엑셀 주문번호에서 날짜 추출 안 될 때: LEFT MID RIGHT로 코드 분리하는 초보 공식

엑셀퀘스트 스터디클럽 · 데이터위자드
엑셀 주문번호에서 날짜 추출 안 될 때: LEFT MID RIGHT로 코드 분리하는 초보 공식

엑셀에서 주문번호 날짜 추출, 코드 분리, 순번 가져오기를 검색하는 경우가 꽤 많습니다. 쇼핑몰이나 ERP에서 내려받은 주문번호가 20260802-BU-0001처럼 한 셀에 붙어 있으면, 날짜별 합계나 지역별 주문건수를 내고 싶은데 어디서부터 손대야 할지 헷갈립니다.

특히 초보자 입장에서는 “눈으로 보면 날짜가 보이는데 왜 엑셀은 날짜로 계산을 못 하지?”라는 부분이 가장 답답합니다. 오늘은 주문번호 한 칸에서 주문일, 지역코드, 순번을 나누고, 그 결과로 SUMIFS 합계까지 확인하는 흐름으로 정리해 보겠습니다.

엑셀 주문번호에서 날짜 추출 안 될 때: LEFT MID RIGHT로 코드 분리하는 초보 공식
엑셀 주문번호에서 날짜 추출 안 될 때: LEFT MID RIGHT로 코드 분리하는 초보 공식

엑셀 주문번호 날짜 추출이 헷갈리는 이유

먼저 원인을 알아두면 수식이 훨씬 편해집니다. 엑셀은 셀 안에 들어 있는 값을 크게 숫자, 날짜, 문자처럼 다르게 봅니다. 주문번호 20260802-BU-0001은 날짜처럼 보이는 20260802가 앞에 있지만, 중간에 하이픈과 영문 코드가 섞여 있으므로 엑셀 입장에서는 그냥 긴 문자입니다.

그래서 이 값을 그대로 월별 합계 조건에 넣으면 잘 안 맞습니다. 날짜 부분을 따로 꺼내서 진짜 날짜로 바꿔야 SUMIFS, COUNTIFS 같은 함수에서 정확히 계산됩니다.

이번 예시는 아래처럼 구성해 보겠습니다. 실제 파일에서는 원본 주문내역이 A4:D10에 있고, E열부터 G열까지는 우리가 수식으로 새로 만드는 보조열입니다.

제목의미
A열주문번호날짜-지역코드-순번 형식
B열거래처주문한 거래처명
C열상품명판매 상품
D열금액주문금액
E열주문일주문번호 앞 8자리에서 추출
F열지역코드주문번호 중간 2글자
G열순번주문번호 끝 4자리

예시 데이터는 4행에 제목이 있고, 5행부터 10행까지 입력되어 있다고 생각하겠습니다.

ABCD
주문번호거래처상품명금액
20260802-BU-0001가온문구복사용지45000
20260802-SE-0002다온상사토너98000
20260802-BU-0003가온문구파일철27000
20260803-DG-0004한빛오피스라벨지32000
20260803-SE-0005다온상사클립15000
20260804-BU-0006가온문구바인더54000

LEFT, MID, RIGHT는 셀 안의 글자를 잘라내는 함수입니다

이 문제는 고급 기능보다 기본 함수 3개만 이해하면 됩니다. LEFT는 왼쪽부터 몇 글자를 가져오고, MID는 중간 위치에서 몇 글자를 가져오며, RIGHT는 오른쪽부터 몇 글자를 가져옵니다.

주문번호 20260802-BU-0001을 글자 위치로 보면, 1번째부터 8번째까지가 날짜입니다. 9번째는 하이픈, 10번째와 11번째가 지역코드, 12번째는 하이픈, 마지막 4글자가 순번입니다. 초보자가 자주 틀리는 부분이 바로 하이픈도 한 글자로 센다는 점입니다.

E5 셀에는 주문일을 만들 수식을 입력합니다. A5의 주문번호에서 연도, 월, 일을 잘라 DATE 함수로 날짜를 만드는 방식입니다.

=DATE(LEFT(A5,4),MID(A5,5,2),MID(A5,7,2))

수식을 입력한 뒤 E5 셀을 선택하고, 오른쪽 아래 채우기 핸들을 E10까지 내려 복사합니다. 결과가 2026-08-02처럼 보이면 정상입니다. 만약 46236 같은 숫자로 보이면 셀 서식이 날짜로 표시되지 않은 것이므로, E5:E10 범위를 선택한 뒤 홈 탭 > 표시 형식 > 간단한 날짜를 선택하면 됩니다.

F5 셀에는 지역코드를 꺼내는 수식을 입력합니다. 지역코드는 주문번호의 10번째 글자부터 2글자입니다.

=MID(A5,10,2)

G5 셀에는 순번을 꺼냅니다. 순번은 끝 4자리이므로 RIGHT 함수를 쓰면 됩니다.

=RIGHT(A5,4)

이때 순번 0001을 숫자로 바꾸면 앞의 0이 사라질 수 있습니다. 순번은 계산용 숫자가 아니라 구분용 코드인 경우가 많으므로, RIGHT로 가져온 문자 상태를 그대로 두는 편이 안전합니다.

추출한 날짜와 코드로 SUMIFS 합계를 확인합니다

이제 주문번호를 분리했으니 실무에서 바로 쓰는 합계를 만들어 보겠습니다. 예를 들어 J2 셀에는 조회할 지역코드, K2 셀에는 조회할 주문일, L2 셀에는 조건에 맞는 금액 합계를 표시한다고 하겠습니다.

입력값설명
J2BU찾을 지역코드
K22026-08-02찾을 주문일
L2수식 입력조건별 금액 합계

L2 셀에는 아래 수식을 입력합니다. D5:D10은 더할 금액 범위, F5:F10은 지역코드 범위, E5:E10은 주문일 범위입니다.

=SUMIFS($D$5:$D$10,$F$5:$F$10,$J$2,$E$5:$E$10,$K$2)

위 예시에서는 2026-08-02에 BU 지역코드인 주문이 두 건입니다. 금액은 45,000원과 27,000원이므로 L2 결과는 72,000이 나와야 합니다.

같은 조건으로 주문건수도 보고 싶다면 M2 셀에 COUNTIFS를 넣으면 됩니다.

=COUNTIFS($F$5:$F$10,$J$2,$E$5:$E$10,$K$2)

COUNTIFS는 조건에 맞는 행의 개수를 세는 함수입니다. 이 예시에서는 M2 결과가 2가 나오면 정상입니다.

SUMIFS가 0으로 나올 때 먼저 보는 곳

분명히 데이터가 있는데 SUMIFS 결과가 0으로 나오는 경우가 있습니다. 이때는 수식이 틀렸다기보다 조건 셀과 보조열의 값 모양이 서로 다른 경우가 많습니다.

가장 먼저 K2 셀의 날짜를 확인해 보세요. K2에 2026-08-02처럼 보이더라도 실제로는 문자일 수 있습니다. K2를 선택했을 때 표시 형식이 날짜인지 확인하고, 가능하면 직접 날짜 형식으로 다시 입력하는 것이 좋습니다.

두 번째로 E열 주문일이 진짜 날짜인지 확인합니다. E5:E10 범위를 선택하고 표시 형식을 일반으로 바꿨을 때 46000대 숫자처럼 보이면 날짜로 잘 만들어진 것입니다. 반대로 20260802 같은 문자 형태가 그대로 보이면 DATE 함수가 아니라 LEFT 결과만 가져온 상태일 수 있습니다.

세 번째로 지역코드에 공백이 섞였는지 봅니다. J2에는 BU를 입력했는데 F열에는 BU 뒤에 보이지 않는 공백이 있으면 서로 다른 값으로 판단될 수 있습니다. 이 예제처럼 MID로 정확히 2글자만 가져오면 공백 문제가 줄어듭니다.

지역코드를 지역명으로 바꾸고 싶을 때

보고서에는 BU, SE, DG 같은 코드보다 부산, 서울, 대구처럼 이름이 보이는 편이 읽기 좋습니다. 이럴 때는 작은 코드표를 만들어 VLOOKUP으로 붙이면 됩니다.

예를 들어 P5:Q7 범위에 아래처럼 지역코드표를 둡니다.

P열Q열
지역코드지역명
BU부산
SE서울
DG대구

H열에 지역명을 표시한다고 하면 H4에는 지역명 제목을 넣고, H5에는 아래 수식을 입력합니다.

=IFERROR(VLOOKUP(F5,$P$5:$Q$7,2,FALSE),"코드확인")

VLOOKUP은 F5의 지역코드를 P5:Q7 코드표 첫 번째 열에서 찾고, 두 번째 열의 지역명을 가져옵니다. 마지막의 FALSE는 정확히 같은 코드만 찾겠다는 뜻입니다. 코드표에 없는 값이 들어오면 오류 대신 코드확인이라고 표시되도록 IFERROR를 함께 사용했습니다.

내 파일에 적용할 때 바꿔야 하는 셀 주소

실제 파일에서는 주문번호가 꼭 A열에 있지 않을 수 있습니다. 주문번호가 C열에 있다면 수식의 A5를 C5로 바꾸면 됩니다. 데이터가 2행부터 시작한다면 A5 대신 A2처럼 첫 데이터 행에 맞춰 입력하면 됩니다.

SUMIFS 수식도 범위를 자기 파일에 맞게 바꿔야 합니다. 금액이 H열에 있다면 $D$5:$D$10 대신 금액 범위인 $H$2:$H$500처럼 지정합니다. 지역코드 보조열과 주문일 보조열도 실제 위치에 맞게 바꾸면 됩니다.

데이터가 많을 때는 범위를 넉넉히 잡아도 됩니다. 예를 들어 2행부터 5000행까지 주문내역이 있다면 금액 범위는 $D$2:$D$5000, 지역코드 범위는 $F$2:$F$5000, 주문일 범위는 $E$2:$E$5000처럼 맞추면 됩니다.

실무에서 적용할 때 볼 것

주문번호에서 날짜와 코드를 분리할 때 핵심은 글자 위치를 정확히 세는 것입니다. 하이픈, 공백, 영문 코드도 모두 한 글자로 계산된다는 점만 기억하면 LEFT, MID, RIGHT 함수가 훨씬 쉬워집니다.

처음에는 보조열을 만드는 것이 번거로워 보일 수 있습니다. 하지만 주문일, 지역코드, 순번을 따로 만들어 두면 SUMIFS 합계, COUNTIFS 건수, VLOOKUP 코드명 변환까지 모두 안정적으로 이어집니다.

결과가 이상할 때는 수식부터 고치기보다 원본 주문번호 형식이 모두 같은지, 날짜가 진짜 날짜인지, 조건 셀 값이 보조열과 같은 모양인지 차례로 확인해 보세요. 이 세 가지만 잡아도 주문번호 분리 작업에서 생기는 대부분의 오류는 금방 해결됩니다.