Microsoft Excel是Microsoft為使用Windows和Apple Macintosh操作系統(tǒng)的電腦編寫的一款電子表格軟件。直觀的界面、出色的計(jì)算功能和圖表工具,再加上成功的市場營銷,使Excel成為最流行的個(gè)人計(jì)算機(jī)數(shù)據(jù)處理軟件。 關(guān)于excel漢字拼音首字母提取的自定義函數(shù),在網(wǎng)上看了一些代碼,總有點(diǎn)小遺憾,一些自定義來提取漢字拼音首字母,如果數(shù)據(jù)源里面有字母或者數(shù)字將會被忽略掉。 下面這個(gè)excel漢字拼音首字母提取的自定義函數(shù),相對完美一些,做了容錯(cuò)處理,考慮到了如果是數(shù)字或者字母,將會自動(dòng)顯示出來,如果是漢字才進(jìn)行提取拼音首字母。 
下面是上面所示效果圖的提取漢字拼音首字母的VBA代碼: Option Explicit Function PY(TT As String) As Variant '自定義函數(shù),目的:把一組漢字變?yōu)橐唤M漢字拼音的第一個(gè)字母。 Dim i%, temp$ ??? PY = "" ??? For i = 1 To Len(TT) ???????? temp = Asc(Mid$(TT, i, 1)) ???????? If temp > 255 Or temp < 0="" then??=""> ???????????? PY = PY & pinyin(Mid$(TT, i, 1)) '轉(zhuǎn)化為拼音首字母, ???????? Else ???????????? PY = PY & LCase(Mid$(TT, i, 1))? '轉(zhuǎn)化英文字母 ???????? End If ??? Next i End Function Function pinyin(myStr As String) As Variant '自定義函數(shù),目的:把單個(gè)漢字變?yōu)槠匆舻牡谝粋(gè)字母。 ??? On Error Resume Next ??? myStr = StrConv(myStr, vbNarrow) ??? If Asc(myStr) > 0 Or Err.Number = 1004 Then pinyin = "" ??? pinyin = Application.WorksheetFunction.VLookup(myStr, [{"吖","A";"八","B";"嚓","C";"咑","D";"鵽","E";"發(fā)","F";"猤","G";"鉿","H";"夻","J";"咔","K";"垃","L";"嘸","M";"旀","N";"噢","O";"妑","P";"七","Q";"囕","R";"仨","S";"他","T";"屲","W";"夕","X";"丫","Y";"帀","Z"}], 2) End Function 使用方法是:打開excel文檔,按下ALT+F11,打開VBE編輯器,然后插入——模塊,復(fù)制上面的代碼,關(guān)閉VBE。回到工作表中,輸入公式,比如:=py(A2),就可以提取A2單元格漢字拼音首字母。
Excel整體界面趨于平面化,顯得清新簡潔。流暢的動(dòng)畫和平滑的過渡,帶來不同以往的使用體驗(yàn)。 |