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
번호 제목 글쓴이 날짜 조회 수
공지 기타 엑셀 VBA 간단한 팁 모아놓기.. +_+ [레벨:30]아별 2007-01-24 33933