• 최초 작성일: 1999-07-24
  • 최종 수정일: 2026-09-29
  • 조회수: 29 회
  • 작성자: 권현욱 (엑셀러)
  • 강의 제목: 여러 가지 문자열 함수들

들어가기 전에

오래 전 엑셀 파일로 진행하던 강의를 웹 글로 복원한 것이라, "버튼을 눌러보세요"처럼 엑셀에서 직접 조작하라는 표현이 남아 있을 수 있습니다. 결과는 본문의 그림이나 표로 확인하실 수 있으며, 현재와 맞지 않는 내용은 보완하되 전반적인 스타일은 당시의 갬성(?)을 유지했습니다.

지난 시간에 예고해 드린대로 오늘은 문자열 함수들에 대해 다루어 보겠습니다.

아래는 자주 사용되는 문자열 함수들을 주~욱 정리해 본 것입니다.

권현욱(엑셀러)
저자: 권현욱(엑셀러), 아이엑셀러 대표

필자는 Excel 컨설턴트, 작가, 그리고 크리에이터입니다. 현재 Microsoft Excel MVP이며, 『챗GPT+엑셀 업무자동화 정석』을 비롯한 10여 권의 도서를 집필했습니다. Excel 자동화 및 생산성 향상 분야에서 25년 넘는 경력을 보유하고 있습니다.

권현욱(엑셀러) 님의 최신 포스트:
  • 최신 글을 불러오는 중...


26년 경력 Microsoft MVP 권현욱(엑셀러) 지음

📊 신간 전자책(PDF) · 287쪽 · 13500원

엑셀 대시보드를 만드는 최적의 '표준 3계층 구조'

  • 3초 안에 읽히는 화면 설계 감각 습득
  • Microsoft Excel MVP의 실전 노하우 수록
  • 중간마진 없는 합리적인 가격, 오직 아이엑셀러에서만!
지금 구매하기 완성 화면 보기

여러 가지 문자열 함수들

핵심 요약

  • LEFT는 문자열의 왼쪽부터, RIGHT는 오른쪽부터, MID는 지정한 위치에서 지정한 개수만큼 문자를 발췌하고 LEN은 문자열의 길이를 구합니다.
  • SUBSTITUTE는 문자열 중의 Old_Text를 New_Text로 바꾸고 REPLACE는 문자열의 특정 부분을 다른 문자열로 대체합니다.
  • LEFT와 RIGHT를 조합하면 코드 중간에 하이픈을 넣어 비교 대상과 변경 대상 자료의 포맷을 같게 맞출 수 있습니다.
① 아름다운 세상을 꿈꾸며/Exceller 아름다운 =LEFT(A1,5)
② 아름다운 세상을 꿈꾸며/Exceller Exceller =RIGHT(A1,8)
③ 아름다운 세상을 꿈꾸며/Exceller 세상을 =MID(A1,6,3)
④ 아름다운 세상을 꿈꾸며/Exceller 21 =LEN(A1)
⑤ 아름다운 세상을 꿈꾸며/Exceller 아름다운 나라를 꿈꾸며/Exceller =SUBSTITUTE(B5,"세상을","나라를")
⑥ 아름다운 세상을 꿈꾸며/Exceller 아름다운 XXX 꿈꾸며/Exceller =REPLACE(B6,6,3,"XXX")

참고: 표의 수식에 나오는 A1, B5, B6과 아래 활용예의 D627은 원본 워크시트 기준 셀 주소입니다. 직접 적용하실 때에는 자신의 자료가 있는 셀 주소로 바꿔 입력하시기 바랍니다.

Step 1: LEFT 함수

(1) Left()함수는 특정 문자열의 왼쪽부터 지정한 수만큼 발췌합니다.

Step 2: RIGHT 함수

(2) Right()함수는 Left()함수와 반대기능 수행하지요.

Step 3: MID 함수

(3) Mid()함수는 특정 문자열의 지정 위치에서 문자를 지정한 개수만큼 구합니다.

Step 4: LEN 함수

(4) Len()함수는 특정 문자열의 길이를 구합니다.

Step 5: SUBSTITUTE 함수

(5) Substitute()함수는 문자열 중의 Old_Text를 찾아서 New_Text로 바꾸어 줍니다(위의 예에서는 '세상을' 부분이 Old_Text, "나라를" 부분이 New_Text가 되겠지요?).

Step 6: REPLACE 함수

(6) Replace()함수는 말그대로 문자열의 특정 부분을 원하는 값(문자열)으로 대체하는 기능을 수행하는 함수입니다

이같은 함수들을 적절하게 조합하여 사용하면 강력한 기능들을 수행할 수 있습니다. 사실 엑셀의 문자열 관련 함수들은 매우 강력합니다. 백문이 불여일견이니까 문자열 함수들을 사용한 활용 예제 두가지를 소개해 드리지요.

<활용예 1>

비교대상 변경대상 변경후
A01234-11001 A0123411001 A01234-11001
A01234-11002 A0123411002 A01234-11002
A01234-11003 A0123411003 A01234-11003
A01234-11004 A0123411004 A01234-11004
A01234-11005 A0123411005 A01234-11005
A01234-11006 A0123411006 A01234-11006
A01234-11007 A0123411007 A01234-11007
A01234-11008 A0123411008 A01234-11008
A01234-11009 A0123411009 A01234-11009
A01234-11010 A0123411010 A01234-11010

위 <활용예 1>은 문자열 함수의 조합을 통해 "비교대상"과 "변경대상" 항목의 값들을 비교하기 위해 두 필드의 포맷을 같게 맞추는 예제입니다. 즉 위와 같은 소스 데이터를 사용해서 Vlookup이나 Hlookup 등의 함수를 적용시키려면 비교 대상과 변경 대상 자료의 포맷이 일치해야 합니다. 즉 비교 대상 부분에서 "-"를 없애주든가 아니면 변경 대상 부분에 "-"를 첨가해 주어야 한다는 얘깁니다.

참고: 편집-바꾸기 메뉴는 구버전 메뉴입니다. 최신 Excel에서는 Ctrl+H(찾기 및 바꾸기)를 누르거나 홈 탭의 찾기 및 선택 - 바꾸기를 선택합니다.

"-"를 없애는 경우라면 작업이 간편하겠지만(편집-바꾸기 메뉴를 쓰면 되겠지요?) 변경 대상 부분에 "-"를 추가해야 할 경우라면 머리를 좀 써야 겠죠.

잠시 방법을 생각해 보시고…

=LEFT(D627,6) & "-" & RIGHT(D627,5)

라고 입력하면 되겠지요?

일부 고참님들은 "갈쳐줄려면 좀 어려운 걸 갈쳐주지…"하는 분도 있을 것입니다. 하지만 쉬운 함수의 다양한 응용법을 알아야 어려운 문제를 잘 풀 수 있습니다.

함수에 자신이 있는 분들은 아래의 <활용예 2>를 풀어 보세요.

<활용예 2>

aaad bdaa dadadaaaabbbccc advagljlkj adaljdlfajald aaaadllmotion

위 문자열 중에서 a가 몇 개나 있는지 알아내야 할 경우가 있다면 어떻게 하시겠습니까? 함수가 서말이라도 꿰야 보배가 됩니다.

그냥 답을 말씀드리면 재미가 없을 것 같아 퀴즈로 내겠습니다. 답은 내일 알려드릴 것이고…

충분히 생각해 보셨겠지요?

답을 찾으신 분은 메일 주세요.

어떻게 하면 될까요? Len()함수와 substitute()함수를 조합해서 쓰면 되겠죠/

오늘은 여기서 이만…

aaad bdaa dadadaaaabbbccc advagljlkj adaljdlfajald aaaadllmotion

참고: 원문의 이 부분은 표가 깨져 있어 표 안의 문장들을 원문에 나온 순서대로 문단으로 풀었습니다. 문장의 순서가 실제와 다를 수 있으며, 아래 '즉,' 뒤에 이어질 내용(퀴즈의 답)은 원문에 없습니다. 답은 다음 글(문자열 함수 응용)에서 확인하실 수 있습니다.

즉,

정리 — 여러 가지 문자열 함수들

구분내용
LEFT문자열의 왼쪽부터 지정한 수만큼 발췌
RIGHTLEFT와 반대로 오른쪽부터 발췌
MID지정한 위치에서 지정한 개수만큼 발췌
LEN문자열의 길이를 구함
SUBSTITUTE문자열 중의 Old_Text를 찾아 New_Text로 바꿈
REPLACE문자열의 특정 부분을 원하는 값(문자열)으로 대체
활용 예 1=LEFT(D627,6) & "-" & RIGHT(D627,5)로 코드 중간에 하이픈을 넣어 비교 대상과 변경 대상의 포맷을 일치시킴
활용 예 2LEN과 SUBSTITUTE 함수를 조합해 문자열 속 특정 문자의 개수를 구하는 퀴즈(풀이는 다음 글)

자주 묻는 질문 (FAQ)

Q1. 문자열의 일부만 가져오려면 어떤 함수를 사용하나요?

왼쪽부터는 LEFT, 오른쪽부터는 RIGHT, 지정한 위치부터는 MID 함수를 사용합니다. 세 함수 모두 가져올 글자 수를 지정합니다.

Q2. SUBSTITUTE 함수와 REPLACE 함수는 어떻게 다른가요?

SUBSTITUTE는 문자열 안에서 바꿀 텍스트를 찾아 새 텍스트로 바꾸고, REPLACE는 시작 위치와 글자 수를 지정해 그 부분을 다른 문자열로 대체합니다.

Q3. VLOOKUP을 쓰려는데 두 자료의 포맷이 다르면 어떻게 하나요?

비교 대상과 변경 대상의 포맷이 같아야 하므로 하이픈을 없애거나 추가해 맞춥니다. 하이픈을 추가할 때는 LEFT와 RIGHT 함수를 하이픈과 연결해 사용합니다.

마치며

문자열 함수는 쉬운 함수라도 조합하면 강력해지므로 여러 가지 조합을 직접 연습해 보시기 바랍니다. VBA에 대한 기초 지식을 공부하실 분은 아이엑셀러 닷컴 사이트 상단 메뉴에서 [Excel 강의] - [Excel 입문]을 먼저 보시면 이해하기 쉽습니다.