자료실

부자는 돈을 써서 시간을 아끼지만 가난한 사람은 시간을 써서 돈을 아낀다

vb6.0/vba

IT HUB를 찾아주셔서 감사합니다.

vb6.0/vba [vb6.0/vba] 한글을 발음대로 영어로 변환(한글이름 영문표기)

페이지 정보

profile_image
작성자 하나를하더라도최선을
댓글 0건 조회 4,642회 작성일 21-01-30 09:21

본문

훔쳐온곳: http://kin.naver.com/qna/detail.nhn?



Function Ename(T$)
    Dim cho() As Variant, moum() As Variant, jong() As Variant
    cho() = Array("g""kk""n""d""tt""r""m""b""pp""s""ss""""j""jj""ch""k""t""p""h")
    moum() = Array("a""ae""ya""yae""eo""e""yeo""ye""o""wa""wae""oe""yo""u""wo""we""wi""yu""eu""ui""i")
    jong() = Array("""k""kk""k""n""n""n""t""l""l""l""l""l""l""l""l""m""p""p""s""ss""ng""j""ch""k""t""p""h")
    Dim i&, W, Str$, K&, n&
    For i = 1 To Len(T)
        W = AscW(Mid(T, i, 1)) - &HAC00
        If W + &HAC00 > 0 Then
            Str = Str & Mid(T, i, 1)
        Else
            For n = 1 To 3
                If n = 2 Then
                        K = (W Mod 21 * 28) \ 28
                        Str = Str & moum(K)
                Else
                    If n = 1 Then
                        K = W \ (21 * 28)
                        Str = Str & cho(K)
                    Else
                        K = (W Mod 21 * 28) Mod 28
                        If K Then Str = Str & jong(K)
                    End If
                End If
            Next
        End If
    Next
    Ename = StrConv(Str, vbProperCase)
End Function

사용 예:) debug.? Ename("한글 app 영어")

결과 예:)Hangeul App Yeongeo


댓글목록

등록된 댓글이 없습니다.