
엑셀에서 외부 데이터를 가져오다 보면 눈에 안 보이는 이상한 공백 때문에 막히는 경우가 자주 생기죠
정렬이 제대로 안 되고 브이룩업 같은 함수도 이유 없이 오류가 나고
필터를 걸었는데 같은 값이 여러 개로 나뉘어 보이기도 합니다
이럴 때 가장 먼저 떠올려야 하는 도구가 바로 TRIM 함수입니다
오늘은 TRIM 함수가 정확히 어떤 역할을 하는지
어떤 공백까지 정리해 주는지
실무에서 어떻게 써야 진짜 효과가 있는지
차근차근 길게 정리해 보겠습니다
핵심은 세 가지입니다
1. 앞쪽 공백 삭제
2. 뒤쪽 공백 삭제
3. 중간에 연속된 공백은 하나만 남기기
쉽게 말하면 이상하게 띄어쓰기 된 문장을
보기 좋은 한 칸 띄어쓰기 상태로 정리하고
앞뒤에 붙어 있는 쓸모없는 공백은 없애 주는 함수입니다
TRIM 함수 기본 문법
함수 형태는 단순합니다
=TRIM(텍스트)
예시
=TRIM(A2)
=TRIM(" ABC 123 ")
=TRIM(SUBSTITUTE(A2,"-"," "))
TRIM 함수가 실제로 어떻게 동작하는지
조금 더 구체적으로 보면 TRIM 함수는 다음 규칙을 따릅니다
1. 앞 공백을 모두 제거합니다
" 엑셀"
→ TRIM 적용 후
"엑셀"
2. 뒤 공백을 모두 제거합니다
"엑셀 "
→ TRIM 적용 후
"엑셀"
3. 중간에 공백이 여러 개 있으면 하나로 줄입니다
"엑셀 TRIM 함수"
→ TRIM 적용 후
"엑셀 TRIM 함수"
4. 완전히 공백만 있는 셀도 처리합니다
" "
→ TRIM 적용 후
"" (빈 문자열로 인식)
이 네 가지 패턴이 TRIM 함수 동작의 전부라고 봐도 됩니다

TRIM 함수가 꼭 필요한 상황
실무에서 TRIM이 가장 자주 쓰이는 상황을 몇 가지로 나눠 보겠습니다
1. 고객 이름에 앞뒤 공백이 섞여 있을 때
고객 이름 리스트가 있는데
어떤 셀은 앞뒤에 공백이 붙어 있습니다
" 홍길동"
"홍길동 "
" 홍 길동"
눈으로 보면 거의 티가 안 나는데
정렬하면 순서가 이상해지고
VLOOKUP이나 XLOOKUP을 써도
같은 이름인데 못 찾는 일이 많이 생깁니다
이때 보통 이렇게 처리합니다
B2셀에
=TRIM(A2)
라고 입력하고
아래로 자동 채우기 한 뒤 값을 복사해서 붙여넣기 값으로 덮어씌웁니다
2. 주소 데이터에 불규칙한 공백이 섞여 있을 때
외부 시스템에서 주소를 가져왔는데
"서울특별시 강남구 역삼동 123-45"
"서울특별시 강남구 역삼동 123-45"
이런 식으로 공백이 들쭉날쭉할 때가 많습니다
이럴 때도 TRIM을 먼저 사용해서
공백을 한 번 정리하고
그 다음에 LEFT, MID, RIGHT, TEXTSPLIT 같은 함수로 나누는 게 좋습니다
예를 들어
B2 셀에
=TRIM(A2)
로 주소를 정리한 뒤
B2를 기준으로 주소를 분해하는 식입니다
3. 코드·ID 값에 공백이 섞여 있을 때
상품 코드나 거래처 코드가
"ABC 001"
"ABC001 "
" ABC001"
이렇게 뒤나 앞에 공백이 섞여 있으면
코드는 같은데 다른 값으로 인식됩니다
이 경우
=TRIM(A2)
로 한 번 정리한 후
코드 기준으로 조회나 집계를 해야 오류가 줄어듭니다
4. 공백 때문에 숫자가 숫자로 인식되지 않을 때
" 1000"
"2000 "
이런 값들은 눈으로 보면 숫자 같지만
실제로는 텍스트인 경우가 많습니다
이럴 때는 두 단계로 처리합니다
먼저 TRIM으로 공백 제거
=TRIM(A2)
그 다음 VALUE 함수나 곱하기 1을 써서 숫자로 변환
=VALUE(TRIM(A2))
=TRIM(A2)*1
이렇게 하면 공백도 없어지고
데이터 형식도 숫자로 정리됩니다
TRIM 함수의 결정적 한계
실무에서 TRIM 함수만 쓰면 안 되는 경우도 많습니다
특히 다음 두 가지는 반드시 알고 있어야 합니다
1. TRIM은 ‘일반 공백’만 제거한다는 점
TRIM 함수가 제거하는 공백은
ASCII 코드 32번 일반 공백 한 종류 뿐입니다
그런데 웹이나 다른 시스템에서 데이터를 가져오면
일반 공백이 아니라
non-breaking space (줄바꿈 방지 공백, CHAR(160))
기타 특수 공백 문자
이렇게 다른 공백이 섞여 있는 경우가 많습니다
이런 값은 TRIM으로 지워지지 않습니다
예를 들어
셀 A2에 있는 값이
겉으로 보기에는 "서울시 강남구" 처럼 보이는데
사실은
"서울시[160]강남구"
같이 특수공백이 들어 있으면
TRIM을 해도 그대로 남습니다
이때는 먼저 SUBSTITUTE로 특수 공백을 일반 공백으로 바꿔야 합니다
예시
=TRIM(SUBSTITUTE(A2,CHAR(160)," "))
순서는 항상
SUBSTITUTE로 특수 공백 → 일반 공백 변환
그 다음 TRIM으로 정리
이렇게 가져가야 합니다
2. 전각 공백은 TRIM이 못 지운다는 점
한글 문서에서 복사한 텍스트나
특정 프로그램에서 가져온 문자열은
가끔 전각 공백이 들어 있습니다
전각 공백은 문자 코드가 다르기 때문에
TRIM으로는 정리가 되지 않습니다
이 경우에도 마찬가지로
SUBSTITUTE로 전각 공백을 일반 공백으로 바꾼 후
TRIM을 사용합니다
전각 공백이 직접 입력되지 않을 때는
복사해서 수식에 붙여 넣거나
CHAR 함수를 써서 처리하기도 합니다
실무에서 자주 쓰는 TRIM 조합 수식
1. TRIM + CLEAN 조합
텍스트 안에 줄바꿈 문자나 제어 문자가 많이 섞여 있을 때는
CLEAN 함수와 같이 쓰면 좋습니다
=TRIM(CLEAN(A2))
CLEAN 함수는 인쇄 불가 문자나 제어 문자를 제거하고
TRIM은 공백을 정리합니다
외부 시스템에서 그냥 복사해서 붙여넣은 텍스트가 지저분할 때
이 조합이 많이 쓰입니다

2. TRIM + SUBSTITUTE 조합
특수 공백이나 특정 기호를 먼저 치환한 다음
전체 공백을 정리하고 싶을 때 쓰는 패턴입니다
예시
특수 공백(CHAR(160)) 제거 후 정리
=TRIM(SUBSTITUTE(A2,CHAR(160)," "))
원치 않는 공백을 다른 문자로 바꿨다가
마지막에 정리하는 패턴도 있습니다
예를 들어
쉼표 앞뒤 공백을 정리하고 싶을 때
=SUBSTITUTE(TRIM(SUBSTITUTE(A2,","," , "))," ,",",")
이런 식으로 단계적으로 정리하기도 합니다

3. TRIM + VALUE 조합
숫자처럼 보이는 텍스트를
완전히 숫자로 변환할 때 자주 쓰입니다
예시
=VALUE(TRIM(A2))
또는
=TRIM(A2)*1
공백 때문에 TEXT 함수와 섞여 있는 값이 문제를 일으킬 때
이 패턴을 많이 사용합니다
4. TRIM + VLOOKUP, XLOOKUP 같이 쓰기
찾는 값 쪽에 불필요한 공백이 섞여 있을 것 같으면
검색값에도 TRIM
표 범위의 기준 열에도 TRIM
이렇게 두 군데 모두 적용하는 경우가 있습니다
예시
=VLOOKUP(TRIM(F2),범위,2,FALSE)
또는
보조열을 하나 만들어서
B2에
=TRIM(A2)
로 정리한 뒤
B열을 기준으로 조회하는 방식이 더 안정적입니다
TRIM 함수 실무 예제 모음
1. 고객명 리스트 깔끔하게 만드는 작업
A열에 고객명이 있다 가정합니다
A2:A1000 범위에 다음 네 가지 문제가 섞여 있습니다
앞 공백
뒤 공백
중간에 공백 여러 개
보이지 않는 특수 공백
이럴 때 B2에 다음 수식을 넣습니다
=TRIM(SUBSTITUTE(A2,CHAR(160)," "))
그 다음 아래로 자동 채우기
완료된 뒤 B열 전체를 복사해서
A열에 값 붙여넣기로 덮어씌웁니다
이 과정을 한 번 거치고 나면
정렬
중복 제거
피벗테이블 기준 필드 설정
이런 작업에서 공백 때문에 생기는 오류가 거의 사라집니다
2. 주소에서 시·군·구만 추출하기 전에 전처리
주소 데이터가 들쭉날쭉할 때
TRIM을 먼저 써 주면
그 다음 단계가 훨씬 쉬워집니다
예시
A2에 전체 주소가 있을 때
먼저 B2에
=TRIM(SUBSTITUTE(A2,CHAR(160)," "))
로 공백을 정리하고
그 다음
TEXTSPLIT, LEFT, MID, FIND
같은 함수로 각 부분을 나눕니다
공백이 정리되어 있지 않으면
어디까지가 시·군·구인지 찾기 어렵고
나중에 수식 유지 관리도 힘들어집니다
3. 텍스트 숫자를 공백 제거 후 숫자로 변환
거래 금액 데이터인데
실제로는 텍스트입니다
" 1,000"
"2,000 "
이 값을 숫자로 바꾸고 싶을 때 단순히 VALUE만 쓰면
공백 때문에 오류가 날 수 있습니다
이때는
=VALUE(SUBSTITUTE(TRIM(A2),",",""))
이렇게 조합합니다
TRIM으로 앞뒤 공백을 지우고
SUBSTITUTE로 쉼표를 제거한 뒤
VALUE로 숫자화합니다
TRIM 함수 사용할 때 자주 나오는 질문
1. 왜 TRIM을 했는데 눈으로 보기에는 똑같나요?
셀에 TRIM을 걸었는데
화면상 텍스트가 전과 똑같이 보일 수 있습니다
이 경우 두 가지 가능성이 있습니다
정말로 공백이 없었거나
non-breaking space 같은 특수 공백 또는 전각 공백이라서 TRIM이 인식하지 못한 경우입니다
이럴 때는
=LEN(A2)
=LEN(TRIM(A2))
두 값을 비교해 보면 됩니다
길이가 줄어들었다면 공백이 정리된 것이고
길이가 그대로면 TRIM이 처리하지 못한 특수 공백일 가능성이 큽니다
이 경우 SUBSTITUTE와 CHAR(160) 조합을 같이 써야 합니다
2. TRIM을 숫자 셀에 써도 되나요?
숫자 셀 자체에 TRIM을 써도
엑셀은 내부적으로 숫자를 텍스트로 바꿔서 처리합니다
그래서 TRIM 결과는 텍스트입니다
원래 숫자로 써야 할 값이면
TRIM 후 VALUE로 다시 숫자로 변환하거나
곱하기 1 같은 방식으로 숫자로 돌려 놓는 것이 좋습니다
예시
=VALUE(TRIM(A2))
=TRIM(A2)*1
실무에서 TRIM을 쓸 때는
특수 공백과 전각 공백은 SUBSTITUTE로 먼저 변환
숫자처럼 보이는 텍스트는 TRIM 후 숫자 변환
피벗이나 조회 전에 기준 필드에 TRIM을 미리 적용
이 세 줄만 습관처럼 체크해도
이상한 공백 때문에 생기는 오류를 많이 줄일 수 있습니다
엑셀에서 데이터 정리를 조금 더 안정적으로 하고 싶다면
어떤 작업이든 먼저 공백부터 의심 그 다음 TRIM으로 정리
이 순서를 기본 패턴으로 가져가는 것이 좋습니다
'엑셀' 카테고리의 다른 글
| 엑셀 이미지 여러 장을 셀 크기에 맞춰 자동 배치하는 VBA 활용 가이드 (0) | 2025.11.22 |
|---|---|
| 엑셀 VLOOKUP 제대로 이해하기 전체 인수 구조부터 실무 오류 해결까지 (0) | 2025.11.21 |
| 엑셀 텍스트 스페이스로 깔끔하게 셀 분리하는 방법 (0) | 2025.11.19 |
| 엑셀 연결된 그림 테두리 잘림 해결법 (카메라 도구로 붙여넣을 때 테두리 잘리는 이유와 해결 방법 2가지) (0) | 2025.11.18 |
| 2026 엑셀 자동달력 실무형 평생 만년달력 템플릿 (0) | 2025.11.14 |