엑셀 / 함수 / REPLACE, REPLACEB / 특정 위치의 문자열을 바꾸는 함수

REPLACE는 문자열에서 시작 위치와 바꿀 문자 수를 지정해 해당 부분을 새 텍스트로 바꿉니다. 같은 단어를 찾아 바꾸는 SUBSTITUTE와 달리 문자의 위치를 기준으로 합니다. REPLACEB는 기존 바이트 단위 함수이며 Microsoft의 현재 문서에서는 사용 중단 예정 함수로 안내합니다.

REPLACE 구문과 인수

=REPLACE(old_text,start_num,num_chars,new_text)

old_text는 원본 문자열, start_num는 1부터 세는 시작 위치, num_chars는 제거할 문자 수, new_text는 넣을 문자열입니다. 원본 셀을 직접 수정하는 것이 아니라 결과 셀에 새 문자열을 반환합니다.

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

문자 위치로 바꾸기

=REPLACE("12345",3,2,"A")
=REPLACE("ABCDE",3,2,"XYZ")

위치를 기준으로 일부 문자를 바꾸는 예제입니다. 첫 수식은 세 번째 문자부터 두 문자 34를 A로 바꾸어 12A5, 두 번째 수식은 CD를 XYZ로 바꾸어 ABXYZE를 반환합니다.

위치를 기준으로 일부 문자를 바꾸는 예제입니다. 첫 수식은 세 번째 문자부터 두 문자 34를 A로 바꾸어 12A5, 두 번째 수식은 CD를 XYZ로 바꾸어 ABXYZE를 반환합니다.

교체할 부분과 새 문자열의 길이는 같지 않아도 됩니다. new_text에 ""을 넣으면 지정한 부분을 삭제합니다. num_chars에 0을 지정하면 원래 문자를 제거하지 않고 그 위치에 새 문자열을 넣습니다.

REPLACEB를 사용하는 기존 파일

REPLACE와 REPLACEB로 문자를 교체하는 비교 예제입니다. 문자 기준과 기존 더블바이트 언어 환경의 바이트 기준은 한글이 섞인 자료에서 서로 다른 결과가 날 수 있습니다.

REPLACE와 REPLACEB로 문자를 교체하는 비교 예제입니다. 문자 기준과 기존 더블바이트 언어 환경의 바이트 기준은 한글이 섞인 자료에서 서로 다른 결과가 날 수 있습니다.

REPLACEB의 바이트 계산은 UTF-8 파일의 실제 크기를 재는 개념이 아닙니다. 기존 수식은 언어 설정과 호환성에 따라 확인하고, 새 텍스트 처리에는 가능한 한 문자 기준 REPLACE를 사용하세요. 이모지가 포함된 자료도 통합 문서의 호환성 버전에 따라 문자 계산을 확인해야 합니다.

오류와 마스킹의 한계

start_num가 1보다 작거나 num_chars가 음수이면 #VALUE! 오류가 날 수 있습니다. 자릿수가 들쑥날쑥하면 고정 위치만으로 원하는 부분을 바꾸기 어려우므로 구분자 위치나 원본 길이를 먼저 검사합니다.

REPLACE로 개인정보 일부를 별표로 표시해도 원본 셀·수식 참조·다른 시트는 남습니다. 배포용 파일은 원본 데이터를 포함하지 않게 별도로 구성하고 확인해야 합니다. 찾은 텍스트 자체를 바꿀 때는 SUBSTITUTE 함수가 적합합니다.

같은 카테고리의 다른 글
엑셀 / 나누기, 몫 구하기, 나머지 구하기

엑셀 / 나누기, 몫 구하기, 나머지 구하기

나눗셈 연산자와 QUOTIENT·MOD의 결과를 비교합니다. 0으로 나누는 오류와 음수에서 몫·나머지가 계산되는 방식도 예제로 설명합니다.

엑셀 / 워크시트 이름 바꾸는 방법, 탭 색 변경하는 방법

엑셀 / 워크시트 이름 바꾸는 방법, 탭 색 변경하는 방법

시트 탭에서 이름과 색을 바꾸는 방법을 설명합니다. 이름의 금지 문자·길이, 중복과 외부 참조·매크로 영향을 확인하는 과정도 다룹니다.

엑셀 / 주민등록번호 뒷자리 별표로 바꾸는 방법

엑셀 / 주민등록번호 뒷자리 별표로 바꾸는 방법

REPLACE로 하이픈 유무에 따라 주민등록번호 뒷자리를 별표로 표시하는 방법을 설명합니다. 형식 검사와 원본이 남지 않는 배포용 파일 확인 절차도 안내합니다.

엑셀 / 함수 / UPPER, LOWER, PROPER / 대문자로 또는 소문자로 변환하는 함수

엑셀 / 함수 / UPPER, LOWER, PROPER / 대문자로 또는 소문자로 변환하는 함수

UPPER·LOWER·PROPER의 변환 결과를 비교합니다. 영문 약어와 이름에서 PROPER가 기대와 다르게 작동하는 경우 및 원본에 값으로 반영하는 방법도 안내합니다.

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

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

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

엑셀 / VBA / 메뉴에 개발 도구 추가하는 방법

엑셀 / VBA / 메뉴에 개발 도구 추가하는 방법

Excel 옵션에서 개발 도구 탭을 추가하고 다시 숨기는 방법을 안내합니다. VBA 편집기·매크로·컨트롤의 역할과 매크로 보안 설정의 차이도 설명합니다.

엑셀 / VBA / 매크로 단축키 만들기, 매크로 실행 버튼 만들기

엑셀 / VBA / 매크로 단축키 만들기, 매크로 실행 버튼 만들기

기존 매크로에 단축키, 도형과 양식 컨트롤 단추를 연결하는 방법을 설명합니다. 기본 단축키 충돌과 다른 파일을 참조하는 버튼의 점검 방법도 안내합니다.

엑셀 / 함수 / YEAR, MONTH, DAY / 년, 월, 일 반환하는 함수

엑셀 / 함수 / YEAR, MONTH, DAY / 년, 월, 일 반환하는 함수

YEAR·MONTH·DAY로 날짜에서 연·월·일을 추출하고 일련번호 구조를 설명합니다. 빈 셀과 텍스트 날짜, 날짜 체계의 차이를 확인할 수 있습니다.

엑셀 / 함수 / XIRR / 비정기적인 현금 흐름의 내부수익률 계산하는 함수

엑셀 / 함수 / XIRR / 비정기적인 현금 흐름의 내부수익률 계산하는 함수

XIRR의 금액·날짜 범위를 맞추고 연 단위 내부수익률을 계산하는 방법을 안내합니다. IRR과 다른 점, 날짜 오류와 추정값의 한계도 설명합니다.

엑셀 / 행, 열, 워크시트 숨기기, 숨기기 취소하기

엑셀 / 행, 열, 워크시트 숨기기, 숨기기 취소하기

행·열·시트를 숨기고 다시 표시하는 경로를 설명합니다. 첫 행·첫 열, 숨기기 취소 비활성화와 숨김이 보안 기능이 아닌 이유도 안내합니다.