RadarURL

소프트웨어
2012.02.24 06:36

엑셀 주민번호 뒷자리 *** 처리

조회 수 11181 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

오늘은 엑셀 묻고 답하기 게시판에 [ryujoo]님의 질문에 대해 [khan..]님이 답변한 내용을 소개합니다.

(엑셀 묻고 답하기 게시물 번호: 46251, 사용버전: Excel 2003)

[질문]주민등록번호 DATA의 숫자들 중 뒷자리 6개의 숫자를 ‘*’으로 표시 할 수 있나요?
ex) 123456-1234567를 123456-1****** 으로 표시하려고 합니다.

또, 한 셀에 두 개의 주민등록번호가 있을 경우도 있습니다. 이럴 경우에도 적용 가능한 방법 좀 부탁 드립니다.
[답변]IF, LEN, REPLACE, SEARCH 함수를 이용하여 다음과 같은 수식을 사용합니다.

=IF(LEN(B2)>15,REPLACE(REPLACE(B2,SEARCH("-",B2)+2,6,"******"),SEARCH("-",B2,8)+2,6,"******"),REPLACE(B2,SEARCH("-",B2)+2,6,"******"))

 

아래와 같이 가상의 주민등록번호가 입력되어 있다고 가정하겠습니다.

faq050309_1.jpg
<1> 한 셀에 입력된 한 개 또는 그 이상의 주민등록번호의 뒷자리 6개의 숫자를 ‘*’기로 대신 표시하기 위해서 B1셀에 다음과 같은 수식을 입력합니다.

=IF(LEN(A1)>15,REPLACE(REPLACE(A1,SEARCH("-",A1)+2,6,"******"),SEARCH("-",A1,8)+2,6,"******"),REPLACE(A1,SEARCH("-",A1)+2,6,"******"))

faq050309_s2.jpg
<2> B1셀에 다음과 같이 결과가 표시됩니다.
faq050309_s3.jpg
<3> B1셀의 수식을 자동 채우기 기능을 이용하여 B5셀까지 복사합니다.
faq050309_s4.jpg
[풀이]
LEN함수를 이용하여 한 셀에 주민등록번호가 1개가 입력되어 있는지, 2개가 입력되어 있는지 구분합니다.
입력된 데이터의 길이가 15자리 이하인 경우에는 REPLACE 함수를 한번 이용하여 뒷자리 6개의 숫자를 ‘*’로 바꿔주고, 15자리 이상인 경우에는 REPLACE 함수를 2번 이용하여 작업을 두 번 수행합니다.
이때 SEARCH함수를 살펴보면 SEARCH("-",A1,8)+2,6,"******")라고 하여 8번째 이후에 입력된 ‘-’의 위치를 반환하도록 되어 있습니다.

 

[참고] 함수

함수명 설   명
REPLACE 지정한 문자 수에 따라 문자열의 일부를 다른 문자열로 바꿉니다.
[형식] REPLACE(old_text,start_num,num_chars,new_text)
Old_text: 바꾸려는 문자열입니다.
Start_num: old_text에서 바꿀 문자의 위치입니다.
Num_chars: REPLACE가 old_text에서 new_text로 바꿀 문자열의 수입니다.
New_text: old_text에 바꾸어 넣을 새 문자열입니다
[예] REPLACE(A1,2,6,"******")
입력: A1=> 1111111
결과: 1******
해설: A1셀에 입력된 데이터의 2번째 자리부터 6개를 ‘*’로 바꿔줍니다.
SEARCH start_num부터 시작하여 특정 문자 또는 텍스트 문자열이 처음 발견되는 문자의 위치를 반환합니다
[형식] SEARCH(find_text,within_text,start_num)
Find_text: 찾고자 하는 텍스트입니다. find_text에 와일드카드 문자인 물음표(?)와 별표(*)를 사용할 수 있습니다. 물음표는 한 문자에 해당하고 별표는 일련의 문자에 해당합니다. 실제 물음표나 별표를 찾으려면 문자 앞에 물결표(~)를 입력합니다.
within_text: find_text를 찾으려는 텍스트입니다.
start_num: within_text에서 찾기 시작할 문자의 위치입니다.
[예] SEARCH("-",A1)
입력: A1셀=> 123456-1234567
결과: 7
해설: A1셀에 입력된 데이터에서 ‘-’위치를 알려줍니다.
LEN 문자열의 문자 수를 구합니다
[형식] LEN(text)
Text: 길이를 알려는 문자열로서 공백도 문자로 계산됩니다.
[예] LEN(A1)
입력: A1셀=> 123456-1234567
결과: 14
해설: A1셀에 입력된 문자열의 문자 수를 계산하여 줍니다.
 

 

출처 : http://webprogrammer.tistory.com/31

?

공부 게시판

공부에 도움되는 글을 올려주세요.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 [공지] 공부 게시판 입니다. 처누 2003.08.18 931491
2506 연애 폭소클럽 제36회 - 즉석미팅 1 (김제동) file JaeSoo 2003.08.18 19016
2505 연애 폭소클럽 제37회 - 즉석미팅 2 (김제동) file JaeSoo 2003.08.18 17842
2504 연애 폭소클럽 제38회 - 방학특집 연애특강 1 (김제동) 1 file JaeSoo 2003.08.18 16392
2503 연애 폭소클럽 제39회 - 방학특집 연애특강 2 (김제동) file JaeSoo 2003.08.18 17858
2502 연애 폭소클럽 제40회 - 방학특집 연애특강 3 (김제동) file JaeSoo 2003.08.18 16866
2501 웹 프로그래밍 이미지 특정 부분에 링크 만들기 처누 2003.08.24 15650
2500 웹 프로그래밍 게시판에 자신의 FTP 자료 올리기 3 처누 2003.08.25 13160
2499 동식물 고양이 클리닉 - 고양이 기르기 file JaeSoo 2003.10.10 13727
2498 동식물 고양이 클리닉 - 고양이 품종 file JaeSoo 2003.10.10 13458
2497 동식물 고양이 클리닉 - 2개월에서 4개월령 고양이 관리 file JaeSoo 2003.10.11 13453
2496 동식물 고양이 클리닉 - 4개월에서 9개월령 고양이 관리 file JaeSoo 2003.10.11 13167
2495 동식물 고양이 클리닉 - 다자란 고양이 file JaeSoo 2003.10.13 13957
2494 동식물 고양이 클리닉 - 나이든 고양이 file JaeSoo 2003.10.13 13711
2493 동식물 고양이 클리닉 - 고양이의 영양 file JaeSoo 2003.10.13 13457
2492 동식물 고양이 먹이와 주의사항 file JaeSoo 2003.10.13 13934
2491 동식물 아기 고양이의 식사 file JaeSoo 2003.10.13 11845
2490 동식물 고양이 사료 급여량 file JaeSoo 2003.10.13 12911
2489 기타 편지봉투 쓰는 법 file JaeSoo 2003.10.21 17017
2488 웹 프로그래밍 제로보드 로그인 실패시 이유를 메세지로 알려주기 처누 2003.11.04 8478
2487 웹 프로그래밍 최근 게시물 출력시 링크게시물에 스타일시트 적용하기 처누 2003.11.06 7957
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 126 Next
/ 126


즐겨찾기 (가족)

JAESOO's HOMEPAGE


YOUNGAE's HOMEPAGE


장여은 홈페이지


장여희 홈페이지


장여원 홈페이지


즐겨찾기 (업무)

알리카페 홀릭

숭실대 컴퓨터 통신연구실 (서창진)

말레이시아 KL Sentral 한국인 GuestHouse


즐겨찾기 (취미)

어드민아이디

유에코 사랑회

아스가르드 좋은사람/나쁜사람

JServer.kr

제이서버 메타블로그

재수 티스토리


즐겨찾기 (강의, 커뮤니티)

재수 강의 홈페이지


한소리


VTMODE.COM


숭실대 인공지능학과


숭실대 통신연구실


베너