在工作中,為了方便查詢、排序或者編碼,需要生成漢字內容信息的首字母,如果信息很多的話,一個個錄入是一件很麻煩的事情,下面給大家介紹一個便捷的方法,輕鬆獲取漢字拼音首字母信息。
最終效果如下:
工具/原料
Microsoft Excel 2010
一、新建Excel文件
新建一個Excel文件,輸入示例漢字內容。
二、設置【開發工具】菜單
【文件】->【選項】->【自定義功能區】->【主選項卡】->勾選【開發工具】
點擊確定以後,導航菜單裡增加一項【開發工具】
三、自定義函數
打開【開發工具】菜單,點擊第一個【Visual Basic】,彈出代碼窗口,
在窗口左側空白處,點擊右鍵,選擇【插入】->【模塊】。窗口右側出現一個白色背景框。
複製粘貼如下內容到右側框中(虛線之間的內容,不含虛線):
---------------------------------------------------------------------
Function getpychar(char)
tmp = 65536 + Asc(char)
If (tmp >= 45217 And tmp <= 45252) Then
getpychar = "A"
ElseIf (tmp >= 45253 And tmp <= 45760) Then
getpychar = "B"
ElseIf (tmp >= 45761 And tmp <= 46317) Then
getpychar = "C"
ElseIf (tmp >= 46318 And tmp <= 46825) Then
getpychar = "D"
ElseIf (tmp >= 46826 And tmp <= 47009) Then
getpychar = "E"
ElseIf (tmp >= 47010 And tmp <= 47296) Then
getpychar = "F"
ElseIf (tmp >= 47297 And tmp <= 47613) Then
getpychar = "G"
ElseIf (tmp >= 47614 And tmp <= 48118) Then
getpychar = "H"
ElseIf (tmp >= 48119 And tmp <= 49061) Then
getpychar = "J"
ElseIf (tmp >= 49062 And tmp <= 49323) Then
getpychar = "K"
ElseIf (tmp >= 49324 And tmp <= 49895) Then
getpychar = "L"
ElseIf (tmp >= 49896 And tmp <= 50370) Then
getpychar = "M"
ElseIf (tmp >= 50371 And tmp <= 50613) Then
getpychar = "N"
ElseIf (tmp >= 50614 And tmp <= 50621) Then
getpychar = "O"
ElseIf (tmp >= 50622 And tmp <= 50905) Then
getpychar = "P"
ElseIf (tmp >= 50906 And tmp <= 51386) Then
getpychar = "Q"
ElseIf (tmp >= 51387 And tmp <= 51445) Then
getpychar = "R"
ElseIf (tmp >= 51446 And tmp <= 52217) Then
getpychar = "S"
ElseIf (tmp >= 52218 And tmp <= 52697) Then
getpychar = "T"
ElseIf (tmp >= 52698 And tmp <= 52979) Then
getpychar = "W"
ElseIf (tmp >= 52980 And tmp <= 53640) Then
getpychar = "X"
ElseIf (tmp >= 53679 And tmp <= 54480) Then
getpychar = "Y"
ElseIf (tmp >= 54481 And tmp <= 62289) Then
getpychar = "Z"
Else '如果不是中文,則不處理
getpychar = char
End If
End Function
'逐個取ASC碼
Function getpy(str)
For i = 1 To Len(str)
getpy = getpy & getpychar(Mid(str, i, 1))
Next i
End Function
---------------------------------------------------------------------
點擊菜單中【保存】,彈出一個提示框,點【是】,再次彈出一個提示框,點【確定】。
三、調用自定義函數
關閉代碼窗口,回到Excel文件。鼠標定位到“拼音首字母”列第一行(C2單元格)。
在函數框中輸入=getpy(B2),(調用自定義函數,獲取B2單元格中漢字內容首字母)回車,可以看到獲取到B2單元格中內容的首字母。
四、生成首字母
鼠標定位到單元格C2右下角,光標變成黑色十字,按住鼠標左鍵往下拉至C15行。獲取全部內容的首字母。