得到汉字的拼音首字母

来源:互联网 发布:linux移动多个文件 编辑:程序博客网 时间:2024/04/19 22:16
  Public Function GetPY(ByVal a1 As String) As String
        If Asc(a1) < 0 Then
            Select Case Asc(Left(a1, 1))
                Case Is < Asc("啊")
                    Return ""
                Case Asc("啊") To Asc("芭") - 1
                    Return "A"
                Case Asc("芭") To Asc("擦") - 1
                    Return "B"
                Case Asc("擦") To Asc("搭") - 1
                    Return "C"
                Case Asc("搭") To Asc("蛾") - 1
                    Return "D"
                Case Asc("蛾") To Asc("发") - 1
                    Return "E"
                Case Asc("发") To Asc("噶") - 1
                    Return "F"
                Case Asc("噶") To Asc("哈") - 1
                    Return "G"
                Case Asc("哈") To Asc("击") - 1
                    Return "H"
                Case Asc("击") To Asc("喀") - 1
                    Return "J"
                Case Asc("喀") To Asc("垃") - 1
                    Return "K"
                Case Asc("垃") To Asc("妈") - 1
                    Return "L"
                Case Asc("妈") To Asc("拿") - 1
                    Return "M"
                Case Asc("拿") To Asc("哦") - 1
                    Return "N"
                Case Asc("哦") To Asc("啪") - 1
                    Return "O"
                Case Asc("啪") To Asc("期") - 1
                    Return "P"
                Case Asc("期") To Asc("然") - 1
                    Return "Q"
                Case Asc("然") To Asc("撒") - 1
                    Return "R"
                Case Asc("撒") To Asc("塌") - 1
                    Return "S"
                Case Asc("塌") To Asc("挖") - 1
                    Return "T"
                Case Asc("挖") To Asc("昔") - 1
                    Return "W"
                Case Asc("昔") To Asc("压") - 1
                    Return "X"
                Case Asc("压") To Asc("匝") - 1
                    Return "Y"
                Case Is >= Asc("匝")
                    Return "Z"
            End Select
        Else
            If UCase(a1) <= "Z" And UCase(a1) >= "A" Then
                Return UCase(Left(a1, 1))
            Else
                Return ""
            End If
        End If
    End Function