엑셀 / 함수 / SUBSTITUTE / 문자열 바꾸기

SUBSTITUTE는 문자열에서 특정 텍스트를 찾아 다른 텍스트로 바꾸는 함수입니다. occurrence 인수를 생략하면 일치하는 부분을 모두 바꾸고, 지정하면 해당 번째만 바꿉니다. 문자열의 고정 위치가 아니라 내용 자체를 바꾸고 싶을 때 사용합니다.

구문과 인수

=SUBSTITUTE(text,old_text,new_text,[instance_num])

text는 원본, old_text는 찾을 텍스트, new_text는 대체할 텍스트입니다. instance_num는 바꿀 번째를 나타내는 양의 정수이며 예를 들어 2이면 두 번째 일치 부분만 바꿉니다. 이 함수는 원본 셀을 지우지 않고 새 텍스트를 반환합니다.

구문과 지원 제품은 Microsoft의 SUBSTITUTE 함수 설명에서 확인할 수 있습니다.

모두 바꾸기와 특정 번째 바꾸기

=SUBSTITUTE("AB-CD-CD","CD","ZZ")
=SUBSTITUTE("AB-CD-CD","CD","ZZ",2)

SUBSTITUTE로 텍스트를 바꾸는 예제입니다. 위 수식은 각각 AB-ZZ-ZZ와 AB-CD-ZZ를 반환합니다. instance_num를 지정했는지에 따라 변경 범위가 달라집니다.

SUBSTITUTE로 텍스트를 바꾸는 예제입니다. 위 수식은 각각 AB-ZZ-ZZ와 AB-CD-ZZ를 반환합니다. instance_num를 지정했는지에 따라 변경 범위가 달라집니다.

원본 텍스트에 일치하는 부분이 없으면 그대로 반환합니다. SUBSTITUTE는 대소문자를 구분하므로 "CD"를 찾는 조건으로 소문자 "cd"까지 바꾸지는 않습니다. 먼저 대소문자를 통일할 필요가 있는지도 자료의 의미에 맞춰 판단하세요.

불필요한 기호 제거 예제

=SUBSTITUTE(A2,"-","")

이 수식은 A2의 하이픈을 모두 제거합니다. 전화번호나 식별 코드를 가공할 때 사용할 수 있지만 결과는 텍스트입니다. 앞자리 0이 중요한 식별자를 숫자로 바꾸면 0이 사라질 수 있으므로 텍스트를 유지하는 편이 적합합니다.

여러 종류의 문자를 제거할 때는 SUBSTITUTE를 중첩할 수 있습니다. 다만 원래 단어 속의 의미 있는 기호까지 제거하지 않는지 대표 자료로 확인하세요. 공백 정리는 TRIM 함수, 위치와 문자 수를 정해 바꾸는 작업은 REPLACE 함수와 구분합니다.

같은 카테고리의 다른 글
엑셀 / 함수 / EVEN, ODD / 짝수 또는 홀수로 올림 또는 내림하는 함수

엑셀 / 함수 / EVEN, ODD / 짝수 또는 홀수로 올림 또는 내림하는 함수

EVEN과 ODD가 0에서 멀어지는 방향으로 짝수·홀수를 만드는 원리를 설명합니다. 음수와 0 예제로 ISEVEN·ISODD의 판별 기능과 구분할 수 있습니다.

엑셀 / VBA / 여러 시트의 내용을 하나의 시트에 모으는 방법

엑셀 / VBA / 여러 시트의 내용을 하나의 시트에 모으는 방법

동일한 머리글의 여러 시트를 VBA로 새 결과 시트에 모으는 예제를 제공합니다. 원본 삭제 없이 값만 복사하며 행 수·머리글·누락 여부를 검증하는 방법을 설명합니다.

엑셀 / 함수 / NPV / 순현재가치 계산하는 함수

엑셀 / 함수 / NPV / 순현재가치 계산하는 함수

NPV의 할인율·기간말 현금흐름과 초기 투자금을 구분하는 방법을 설명합니다. 현재가치 예제, 기간 단위와 불규칙한 날짜 자료의 주의점도 다룹니다.

엑셀 / 이메일 앞 부분 추출하는 방법

엑셀 / 이메일 앞 부분 추출하는 방법

이메일의 @ 앞 사용자 부분을 추출하는 수식과 예제를 안내합니다. 누락·중복 @ 및 공백 처리와 개인정보 식별의 한계도 설명합니다.

엑셀 / 틀 고정 하는 방법, 틀 고정 취소하는 방법

엑셀 / 틀 고정 하는 방법, 틀 고정 취소하는 방법

선택 셀 위·왼쪽의 행·열을 틀 고정하는 방법을 설명합니다. 첫 행·첫 열 고정, 취소와 인쇄 제목 설정의 차이도 안내합니다.

엑셀 / 리본 메뉴 숨기기, 탭만 표시하기

엑셀 / 리본 메뉴 숨기기, 탭만 표시하기

리본 메뉴를 접거나 탭만 표시하고 다시 고정하는 방법을 설명합니다. Ctrl+F1과 버전별 표시 옵션을 사용해 화면 공간을 조절할 수 있습니다.

엑셀 / 셀 안에서 강제 줄바꿈하는 방법

엑셀 / 셀 안에서 강제 줄바꿈하는 방법

Alt+Enter로 셀 안에 줄바꿈을 넣고 표시·행 높이를 조절합니다. 자동 줄 바꿈과 실제 줄바꿈의 차이, 수식에서 생성·제거하는 방법도 설명합니다.

엑셀 / 함수 / INT, TRUNC / 소수를 정수 만드는 함수

엑셀 / 함수 / INT, TRUNC / 소수를 정수 만드는 함수

INT와 TRUNC가 음수에서 달라지는 이유를 예제로 비교합니다. TRUNC의 자릿수 설정과 표시 형식만 변경하는 경우의 차이도 설명합니다.

엑셀 / 인쇄 / 바닥글에 총 페이지 수, 현재 페이지 번호 표시하는 방법

엑셀 / 인쇄 / 바닥글에 총 페이지 수, 현재 페이지 번호 표시하는 방법

바닥글에 현재 페이지·전체 페이지 수를 넣고 모양을 수정하는 방법을 설명합니다. 필드 삽입, 인쇄 범위와 실제 미리 보기 확인을 안내합니다.

엑셀 / VBA / 매크로 만들고 실행하기

엑셀 / VBA / 매크로 만들고 실행하기

표준 모듈에 SayHello 매크로를 만들고 실행·수정하는 과정을 설명합니다. Sheet1 참조의 의미, 셀 덮어쓰기와 xlsm 저장 시 주의점도 다룹니다.