本帖最后由 爱疯 于 2020-6-16 17:32 编辑
EXCEL技術雜壇中有朋友问道,如何提取汉语拼音的首字。
函数法:利用vlookup(可以在本站找Vlookup相关教材),但有一定的局限性,效率也是问题。
vba法:是最佳的选择,群友提出某高人用vb编写要几百行。我要说的是如果用Excel VBA几行就行,为什么这么说呢?因为Excel里利用Vlookup工作表函数和Evaluate方法可以快捷的计算出结果。
通过这个例子可以看出Excel VBA独有的优势。代码如下
Public Function MyPY(ByVal vText As Variant) As String
Application.Volatile
Dim strResult As String
Dim lStart As Long
On Error Resume Next
For lStart = 1 To Len(vText)
strResult = strResult & Application.Evaluate("VLookup(""" & Mid(vText, _
lStart, 1) & _
""",{""吖"",""A"";""八"",""B"";""嚓"",""C"";""咑"",""D"";""鵽"",""E"";""发"",""F"";""猤"",""G"";""铪"",""H"";""夻"",""J"";""咔"",""K"";""垃"",""L"";""嘸"",""M"";""旀"",""N"";""噢"",""O"";""妑"",""P"";""七"",""Q"";""囕"",""R"";""仨"",""S"";""他"",""T"";""屲"",""W"";""夕"",""X"";""丫"",""Y"";""帀"",""Z""},2,1)")
Next
MyPY = strResult
End Function
200792811195788615.rar
(7.09 KB, 下载次数: 9)
|