엑셀 TEXT 함수는 숫자, 날짜를 원하는 형태의 텍스트로 바꾸어서 표시해줍니다. 예를 들어 숫자 50000을 50,000으로 표시하려면 셀 서식을 지정해도 되지만 TEXT 함수를 이용해서 표시할 수도 있습니다.
▶ 셀 서식을 지정하는 방법은 다음 링크를 참고하세요.
[셀서식을 지정하여 원하는 형태로 표시하기]
구문(Syntax)
TEXT(value,format_text)
숫자(날짜포함, 엑셀에서 날짜는 숫자로 저장된다)를 원하는 형태의 텍스트로 바꾸어서 표시해준다.
인수
- value : 텍스트로 바꿀 값(서식코드를 적용할 값)
- format_text : 적용할 텍스트 형식(서식코드)
TEXT 함수는 서식코드를 지정하여 텍스트의 표시 형식을 결정합니다. 동일한 값이라도 서식코드에 따라 표시형식이 달라집니다. TEXT 함수에서 사용하는 서식코드는 '셀 서식'을 지정할 때 사용하는 서식코드와 기능이 동일합니다.
※ 주의: 색상 표시, 출력된 숫자의 좌/우 정렬, 문자 반복 등의 기능은 '셀 서식'에서는 표현 가능하지만 TEXT 함수에서는 표현되지 않습니다.
사용 예
1) 숫자 표시
TEXT 함수를 이용하여 다음과 같이 숫자를 원하는 형태로 표시할 수 있습니다.
=TEXT(B6,"#,##0") => 10,000
=TEXT(B7,"#,##0") => 0
천단위 콤마표시, #은 유효한 숫자를 표시, 0은 입력값이 0이면 0으로 표시
=TEXT(B8,"#,###") => 10,000
#은 유효한 숫자만 표시하며, 콤마(쉼표)는 천단위 마다 콤마를 넣어줌
=TEXT(B9,"#,###") => 결과 표시 없음
#은 유효한 숫자만 표시하므로 값이 0이면 아무런 표시를 하지 않음
=TEXT(B10,"000,000") => 010,000
0표시는 입력값이 서식코드 보다 짧으면 나머지를 0으로 채움
=TEXT(B11,"#,###,") => 5,000
서식코드의 마지막에 콤마를 붙이면 1000으로 나누어서 표시
=TEXT(B12,"#,###,,") => 5
서식 코드의 마지막에 콤마를 두 번 붙이면 1000으로 나누고 1000으로 한 번 더 나눈 것으로 표시함, 따라서 5000000은 5로 표시
2) 날짜 및 시간 표시
날짜 및 시간을 표시할 때 사용하는 서식코드는 다음과 같습니다. 일반적으로 다른 코드값과 조합하여 사용합니다.
- y,m,d : 연,월,일을 표시
- a : 요일을 표시
- h : 시간을 표시
- m : 분(h(시간) 또는 s(초)와 함께 사용해야 분으로 표시, 단독으로 사용시 월로 표시됨)
- s : 초를 표시
- AM/PM, A/P : 오전/오후를 표시
=TEXT(B17,"yyyy-mm-dd") => '2022-06-12'
=TEXT(B18,"hh:mm AM/PM") => '09:05 AM'
=TEXT(B19,"yyyy-mm-dd hh:mm AM/PM") => '2022-07-01 03:52 PM'
=TEXT(B20,"[$-ko-KR]yyyy-mm-dd AM/PM hh:mm") => '2022-07-01 오후 03:52'
3) 분수 표시
분수로 표시할 때 입력값이 정확히 분수로 맞아 떨어지지 않으면 가장 가까운 자리의 분수 값으로 반올림되는 점을 주의해야 합니다. 예를 들어 입력값 0.33을 한 자릿수 분모로 표현하면 1/3이 됩니다.
=TEXT(B25,"# ?/?") => '1/2'
한 자릿수 분모
=TEXT(B26,"# ?/?") => '4 1/5'
한 자릿수 분모
=TEXT(B27,"# ??/??") => '3/10'
두 자릿수 분모
=TEXT(B28,"# ???/???") => '3 16/113'
세 자릿수 분모
4) 기타 표시
=TEXT(B33,"[<=999999]####-####;(0##) ####-####") => '(031) 3535-2323'
전화 번호(국번 4자리)
=TEXT(B34,"[<=9999999]###-####;(0##) ###-####") => '(031) 535-2323'
전화 번호(국번 3자리)
=TEXT(B35,"000000-0000000") => '990501-1231346'
주민등록번호
=TEXT(B36,"[DBNum4][$-ko-KR]G/표준") => '삼천오백'
숫자한글
=TEXT(B37,"[DBNum1][$-ko-KR]G/표준") => '三千五百'
한자
=TEXT(B38,"[DBNum2][$-ko-KR]G/표준") => '參阡伍百'
한자-갖은자
서식코드에 사용되는 문자
서식코드에 사용되는 문자입니다. 이 문자를 조합하면 다양한 형태로 숫자를 표시할 수 있습니다.
문자 | 의미 |
# | 숫자 하나 또는 여러 개를 의미, 유효 자릿수만 표시(#으로 표시한 서식의 길이보다 입력한 값이 짧은 경우에는 값의 길이 만큼 표시됨) |
0 | 숫자 하나를 의미, 0으로 표시한 서식의 길이보다 입력한 값이 짧은 경우 나머지는 0으로 채움 |
? | 숫자 하나를 의미, ?로 표시한 서식의 길이보다 입력한 값이 짧으면 나머지는 공백으로 채움, 소수점을 고정된 위치에 표시할 때 사용할 수 있다. |
, | 천단위 표시용 쉼표(콤마) |
_(밑줄) | 숫자에서 공백을 표시할 때 사용, 밑줄 다음의 문자와 같은 너비의 공백을 만들 때 사용(예: “_)” 을 입력하면 “)”의 문자크기만큼 공백이 생김) |
@ | 문자를 그대로 출력, @을 2번 반복하면 입력된 문자를 2번 반복해서 출력 |
* | * 뒤의 문자를 셀 너비에 맞게 반복 |
[ 엑셀 텍스트 함수 ]
- TEXTAFTER 함수 – 구분기호 뒤의 텍스트 잘라내기
- TEXTBEFORE 함수 – 구분기호 앞의 텍스트 잘라내기
- TEXTSPLIT 함수 – 기호로 구분하여 텍스트 나누기
- 엑셀에서 텍스트(문자열) 다루기
- IF 함수에서 와일드카드가 안될 때
- 텍스트에서 마지막 단어 잘라내기
- TRIM 함수 - 공백 제거하기
- CLEAN 함수 – 인쇄할 수 없는 문자 제거
- LEFT 함수 – 왼쪽부터 텍스트 자르기
- MID 함수 – 중간부터 텍스트 자르기
- RIGHT 함수 – 오른쪽부터 텍스트 자르기
- UPPER 함수 - 텍스트를 대문자로 바꾸기
- LOWER 함수 - 텍스트를 소문자로 바꾸기
- PROPER 함수 - 첫 글자를 대문자로 바꾸기
- 엑셀에서 조건을 만족하는 텍스트 합치기(병합)
- SUBSTITUTE 함수로 위치에 관계없이 텍스트 바꾸기
- REPLACE 함수로 텍스트 바꾸기
- NUMBERVALUE 함수 - 지역 설정에 영향받지 않고 숫자로 변환
- T 함수 - 텍스트가 입력된 셀만 반환하기
- UNICHAR 함수 - 코드값에 해당하는 유니코드문자 반환
- CHAR 함수 - 코드값에 해당하는 문자 반환
- UNICODE 함수 - 문자의 유니코드값 구하기
- CODE 함수 - 문자의 코드값 구하기
- FIXED 함수 - 숫자 반올림 후 텍스트로 변환
- VALUE 함수 - 텍스트를 숫자로 변환하기
- EXACT 함수 - 두 텍스트가 같은지 비교하기
- SEARCH 함수 – 대소문자 구분없이 텍스트 위치 찾기
- TEXT 함수 - 숫자,날짜를 텍스트로 표시
- REPT 함수 - 텍스트를 반복해서 표시
- CONCATENATE 함수 – 텍스트 합치기
- CONCAT 함수 – 텍스트 합치기
- TEXTJOIN 함수 – 기호로 구분하여 텍스트 합치기
- LEN 함수 – 텍스트 길이 구하기
- FIND 함수 – 텍스트의 위치 찾기
안녕하세요
섹션1 #,##0 값이 양수일때는 파란색으로, 천단위 콤마를 표시
이렇게 설명을 하셨는데요
적용해보면 색이 변하지 않습니다.
제가 잘못 사용하는 건가요? 아니면 설명을 잘못하신 걸까요?
B8 셀에 -8000을 입력하고 수식을 =TEXT(B8,"#,##0;△#,##0;0.00;@고객님") 이렇게 넣으면
검은색으로 △8000 이라고 나옵니다.
안녕하세요. 위에 보시면 "단, 색상표시 등 일부는 셀서식에서는 적용되지만 TEXT함수에서는 적용안됨"이라고 되어 있는데 잘 안보이네요.
빨간색으로 "색상표시, 출력된 숫자의 좌/우 정렬, 문자반복 등 셀에서만 표현가능한 기능은 TEXT함수에서는 적용되지 않음"이라고 잘 보이게 해 두었습니다.
TEXT함수는 함수이름 그대로 서식을 텍스트로 표현하기 때문에 색상, 정렬등의 기능을 제공하지 않고 색상기능을 적용해도 검정색으로만 표시됩니다.
감사합니다.
설명이 있었는데 제대로 못 보고 열심히 아래쪽 수식만 보고 따라 해봤었네요.
답변 감사합니다.
엑셀에서 다른 셀의 값을 참조해서 콤마와 색을 넣는 방법은 없을까요?
100,000 -10,000
A1셀 B1셀
100,000원 - 10,000원 = 90,000원
A1 B1 A1-B1
빨간색 파란색
아니면
100,000원 + (-10,000)원 = 90,000원
빨간색 파란색
이렇게 나타나게 하는 방법은 없을까요?
안녕하세요. 셀마다 셀서식을 지정하면 되지 않을까요?
셀서식에 대해서는 다음 링크를 참고하세요.
https://xlworks.net/excel-tutorial-intermediate-format-cells/
감사합니다.
셀을 하나로 합쳐서 사용하니까 셀 서식으로는 처리가 안 됐습니다.
셀 값의 일부는 빨간색 일부는 파란색으로 표시를 해야 해서요.
검색해서 VBA로 해결했습니다.
감사합니다.
010-5555-1234 전화번호를
01055551234 로는 어떻게 바꿉니까?ㅠ
텍스트의 일부를 새로운 텍스트로 바꾸는 SUBSTITUTE함수를 이용하면 됩니다.
=SUBSTITUTE("010-5555-1234","-","")
함수에 대한 자세한 설명은 다음 링크를 참고하세요.
https://xlworks.net/excel-function-replace-substitute/
안녕하세요. 많은것을 배웁니다.
6/2(날짜) = A1
6/3(날짜) = A2
셀 A3에 6/2~6/3 표현하고 싶은데 어케 해야하나요?
6/2~6/3으로 할 때는
=TEXT(A1,"m/d")&"~"&TEXT(A2,"m/d")
06/02~06/03으로 할 때는
=TEXT(A1,"mm/dd")&"~"&TEXT(A2,"mm/dd")
으로 하면 됩니다.
문의드립니다.
아래 셀에 있는 내용을 CONCATENATE를 변환함에 있어,
숫자에 천단위마다 ","컴마를 넣을수 없어서 문의드립니다.
만 0세 484,000 3 12 17,424,000 만 0세 484000원X3명X12개월=17424000원
함수공식
=CONCATENATE(A3,B3&"원","X",C3&"명","X",D3&"개월","=",E3&"원")
CONCATENATE(A3,TEXT(B3,"#,###")&"원".... 와 같이 숫자 값에 TEXT함수를 적용하면 됩니다.
감사합니다~^^
안녕하세요
표시형식 잘 정리되어 있어 참고합니다.
금액 표시 할 때 한가지 궁금한 점이 있습니다. 예를 들면 이런 건데요
10345만원 → 1억 0,345만원 ; 만원단위 천자리 표기 시 "0"과 "," 표시됨
10345만원 → 1억 345만원 ; 만원단위 천자리 "0"인 경우 빈칸으로
이렇게 하는 방법은 없을까요?
안녕하세요! 말씀해주신 내용 잘 봤습니다~
한 가지 질문 드립니다~ 2007.04.01의 날짜형식을 2007년 4월 1일로 바꾸고 싶은데 가능할까요?^^
안녕하세요. 다음과 같이 하시면 됩니다.
날짜가 입력된 셀을 마우스로 선택 > Ctrl+1 > 셀서식 창이 뜨면 표시형식 탭의 왼쪽 범주에서 날짜 선택 > 오른쪽의 형식에서 2007년 4월 1일로 표시된 것을 선택 > 확인
만약에 안된다면 "2007.04.01"이 날짜값이 아닐 것 같습니다. 엑셀에서 날짜사이를 점으로 구분하지는 않고 하이픈을 쓰므로 하이픈으로 구분하여 날짜를 입력하면 됩니다.
1-01, 1-02 이렇게 숫자로 표현하고 싶은데 -를 빼기로 인식해서 표현이 잘 안되네요. 어떻게 해야할까요??
날짜를 표시하신다면 셀서식 메뉴(Ctrl+1) -> 표시형식 탭에서 '사용자 지정'을 선택한 후 형식에 'm-dd'를 입력하면 됩니다.
감사합니다.
덕분에 좋은 정보 알게 되었습니다~
즐겨찾기 해놓고 자주 볼 거 같습니다.^^