1. 아별툴
  2. 아별툴 패밀리
  3. 엑셀 질문하기
  4. 엑셀 강좌
  5. 엑셀 팁
  6. 엑셀 자료실
  7. 엑셀 연구과제
  8. 엑셀 북마크
  9. 관련 프로그램 소개

안녕하세요?

아별닷컴의 주인장 오주원입니다. ^^


요즘 인디언식 이름 짓기.. 중세 유럽식 이름 짓기, 일본식 이름 짓기가 유행이잖아요? ^_^;;

그래서 생년월일을 집어 넣으면 자동으로 이름을 변환해주는 사용자 정의 함수를 만들어봤습니다. ㅎㅎ

 

원래는 VLookup만으로도 충분히 만들 수 있는데..

굳이 VBA를 이용해서 사용자 정의 수식으로 만든 이유는..

~는(은), ~와(과), ~를(을) 등의 조사때문이었습니다. +_+;;

 

푸른 말을(를) 보라. 라고 하면 모냥이 안나니까.. ^_^;;

바로 앞의 명사의 마지막 글자에 종성이 있는지 여부에 따라 을또는 를을 붙이게끔 만들었습ㄴ다.

 

마지막 글자에 종성이 있는지 아는지 아는 사용자 정의 함수는 아래와 같습니다.

 

'### 한글 글자에 종성이 있는지 확인하는 코드
'### Created by abyul.com (Joowon Oh)
'### Date : 2012.01.11
Private Function existJongSeong(strTarget As String)
    existJongSeong = IIf(((CDbl("&h" & Hex(AscW(strTarget))) - 44032) Mod (21 * 28)) Mod 28 = 0, False, True)
End Function

 

만드는 김에..

글자를 초성, 중성 종성으로 나누어 주는 사용자 정의 함수도 만들어서 아별툴에 넣어버렸습니다. +_+;;

한글의 유니코드 조합 방법만 알면.. 의외로 간단히 구현할 수가 있습니다.

 

'### 한글 코드 = "가"의 코드인 44032 + (초성*21*28) + (중성*28) + 종성

 

한글의 유니코드는 아래의 범위 값을 갖습니다.

               44032 ~ 55203

다르게 표시하면..

               CDbl("&h" & Hex(AscW("가"))) ~ CDbl("&h" & Hex(AscW("힣")))

 

문자의 유니코드를 뽑아내려면.. Asc가 아닌 AscW를 써야한다는 것만 주의 하시면 되겠습니다.

Asc는 시스템 코드를 리턴한다능.. 시스템 코드 vs 유니코드.. @_@;;

 

자세한 로직은 아래 링크를 참고하세요..

http://cafe.naver.com/flashdev/38144

http://cafe.naver.com/woosyong/127

 

 

 

다운 받기 : abyul.com_20120111_IndianName-2.xlsm



[ 미리 보기 ]


abyul.com_0000292.jpg
...

...

...

전체 코드는 첨부파일에 있어요~ ^^

 




댓글 '1'

[레벨:4]pgpoch

2012.01.12 22:17:56
*.115.163.88

ㅋㅋㅋ 이거 잼나는 유틸? 이네요.. ^^

문서 첨부 제한 : 0Byte/ 2.00MB
파일 제한 크기 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
공지 기타 엑셀 VBA 간단한 팁 모아놓기.. +_+ [레벨:30]아별 2007-01-24 34100
65 기타 [펌] 한글을 자음 모음으로 나누기 + 합치기(초성,중성,종성) [레벨:30]아별 2022-03-22 2616
64 엑셀.. 잡다구리.. 폼에서 홈페이지 링크 등.. [레벨:30]a☆ 2004-10-25 3392
63 기타 [펌] 추가 기능 개발시 리본메뉴에 넣을 MSO Image 쉽게 확인하기 imagefile [레벨:30]아별 2015-01-09 3548
62 엑셀에서 에러 처리 [1] [레벨:30]a☆ 2004-10-23 3732
61 엑셀 기본작업 매크로.. 선택/입력/복사 등 [레벨:30]a☆ 2004-10-25 3861
60 엑셀에서 매크로 실행 동안 화면이 업데이트 되지 않게 하기.. [레벨:30]a☆ 2004-10-26 3921
59 [엑셀VBA 기본 규칙] 순환문.. [레벨:30]a☆ 2005-08-04 4195
58 기타 [VBA] 컴퓨터 이름 알아내기 등 PC 환경 변수 읽오이기.. Environ [레벨:30]아별 2015-04-08 4550
57 [엑셀VBA] 변수의 전달 [레벨:30]a☆ 2005-05-13 4594
56 엑셀의 내용을 복사해서 메모장을 띄우고 붙여넣기 [레벨:30]a☆ 2005-07-21 4790
55 하이퍼링크 일괄 제거하기 [레벨:30]a☆ 2005-07-21 5001
54 엑셀 실행시 자동으로 실행 // 종료시 자동으로 실행 [레벨:30]아별 2004-10-25 5078
53 [펌] 엑셀로 최대 공약수 구하기 [2] [레벨:30]아별 2008-12-18 5310
52 셀의 상대 위치 이동< offset(행,열) >과 절대 위치 이동.. [레벨:30]a☆ 2004-10-20 5432
51 메모 입력할때 사용자 이름 제거하고 입력하기.. [레벨:30]a☆ 2006-01-19 5439
50 엑셀 도구모음에 콤보박스로 매크로 실행하기.. +_+ [레벨:30]a☆ 2005-11-03 5469
49 바로 옆셀의 메모값 가져 오기 [1] [레벨:30]아별 2008-10-20 5519
48 스스로 사라지는 메시지 박스 file [1] [레벨:30]아별 2009-05-07 5639
» 기타 VBA로 인디언식 이름 만들어주는 사용자 정의 함수 만들기.. imagefile [1] [레벨:30]아별 2012-01-11 5745
46 마우스 좌표를 반환 받기 file [레벨:30]아별 2009-05-07 5863