엑셀지식
2026년 5월 1일
작성자: JH (중견기업 인사팀 출신)
엑셀 텍스트 함수 완벽 정리
LEFT · RIGHT · MID · FIND · SUBSTITUTE · TRIM
"홍길동(인사팀)"에서 이름만 추출하거나, "2026-05-01"에서 연도만 잘라내거나, 제품 코드 중간의 특정 부분을 가져와야 할 때 텍스트 함수가 필요합니다. 이 글에서는 실무에서 가장 많이 쓰이는 LEFT, RIGHT, MID, FIND, LEN, SUBSTITUTE, TRIM 함수를 예제 중심으로 정리합니다.
텍스트 함수 한눈에 보기
| 함수 | 역할 | 간단 예시 |
LEFT | 왼쪽에서 N글자 추출 | =LEFT("서울시", 2) → "서울" |
RIGHT | 오른쪽에서 N글자 추출 | =RIGHT("인사팀", 1) → "팀" |
MID | 중간 N번째부터 M글자 추출 | =MID("2026-05-01", 6, 2) → "05" |
LEN | 텍스트 글자 수 반환 | =LEN("안녕하세요") → 5 |
FIND | 특정 문자의 위치 반환 (대소문자 구분) | =FIND("(", "홍길동(인사팀)") → 4 |
SEARCH | 특정 문자의 위치 반환 (대소문자 무시) | =SEARCH("a", "Apple") → 1 |
SUBSTITUTE | 특정 문자를 다른 문자로 교체 | =SUBSTITUTE("010-1234-5678", "-", "") → "01012345678" |
TRIM | 앞뒤 공백, 단어 사이 중복 공백 제거 | =TRIM(" 안녕 ") → "안녕" |
STEP 1 — LEFT / RIGHT: 앞뒤에서 글자 추출
1날짜 문자열에서 연도 추출
=LEFT("2026-05-01", 4)
결과: "2026" — 왼쪽 4글자를 반환합니다.
2전화번호 뒷자리 추출
=RIGHT("010-1234-5678", 4)
결과: "5678" — 오른쪽 4글자를 반환합니다.
STEP 2 — MID: 중간 글자 추출
=MID(text, start_num, num_chars)
1날짜에서 월(MM) 추출
=MID("2026-05-01", 6, 2)
결과: "05" — 6번째 문자부터 2글자를 반환합니다.
STEP 3 — FIND + LEFT/MID: 구분자 기준으로 텍스트 분리
1"홍길동(인사팀)"에서 이름만 추출
FIND로 "(" 위치를 찾은 뒤, 그 앞까지만 LEFT로 잘라냅니다.
=LEFT(A2, FIND("(", A2)-1)
FIND("(", A2)가 4를 반환하면, LEFT(A2, 3)이 되어 "홍길동"을 반환합니다.
2괄호 안 텍스트(부서) 추출
=MID(A2, FIND("(", A2)+1, FIND(")", A2)-FIND("(", A2)-1)
"홍길동(인사팀)"에서 "인사팀"을 추출합니다.
STEP 4 — SUBSTITUTE: 문자 교체
1전화번호 하이픈 제거
=SUBSTITUTE(A2, "-", "")
"010-1234-5678" → "01012345678". 모든 "-"를 빈 문자열로 교체합니다.
2특정 n번째 문자만 교체
=SUBSTITUTE(A2, "-", "/", 2)
네 번째 인수(2)를 지정하면 두 번째 "-"만 "/"로 교체합니다.
STEP 5 — TRIM: 공백 제거
1VLOOKUP이 #N/A 날 때 공백 제거
복사·붙여넣기한 데이터에 눈에 보이지 않는 공백이 들어있으면 VLOOKUP이 값을 찾지 못합니다. TRIM으로 정리하세요.
=VLOOKUP(TRIM(E1), $A$1:$C$100, 2, FALSE)
TRIM은 앞뒤 공백과 단어 사이의 연속 공백을 제거하지만, 줄바꿈 문자(줄바꿈 셀)는 제거하지 못합니다. 줄바꿈까지 제거하려면 =SUBSTITUTE(TRIM(A2), CHAR(10), "")를 사용하세요.
자주 묻는 질문
FIND와 SEARCH의 차이는?
FIND는 대소문자를 구분하고, SEARCH는 구분하지 않습니다. 또한 SEARCH는 와일드카드(*, ?)를 사용할 수 있지만 FIND는 불가합니다. 한국어 데이터에서는 대부분 FIND를 사용합니다.
LEN 함수는 공백도 글자 수로 셉니까?
네, LEN은 공백을 포함한 모든 문자를 셉니다. 공백 없이 글자 수를 세려면 =LEN(SUBSTITUTE(A2," ",""))처럼 공백을 먼저 제거하세요.
구분자(, 나 / 등)를 기준으로 여러 열로 분리하는 더 쉬운 방법이 있나요?
있습니다. [데이터] 탭 → [텍스트 나누기] 기능을 사용하면 구분자를 지정해 여러 열로 한 번에 분리할 수 있습니다. 수식 없이 처리하므로 일회성 작업에는 이 방법이 더 편합니다.