EXCEL 如何取汉字首拼(包括多音字首拼)
EXCEL中A11你好2出行实现效果A1B11你好NH2出行CX注:A1:2中‘行’是多音字...
EXCEL中 A1
1 你好
2 出行
实现效果 A1 B1
1 你好 NH
2 出行 CX
注:A1:2 中‘行’是多音字 展开
1 你好
2 出行
实现效果 A1 B1
1 你好 NH
2 出行 CX
注:A1:2 中‘行’是多音字 展开
5个回答
展开全部
具体操作步骤如下:
1、首先,打开Excel,然后按Alt+F11快捷键打开Viaual
Basic编辑器,点击工具栏插入-模块,如下图所示,然后进入下一步。
2、其次,把准备好的取拼音首字母大写专函数粘贴进来,关闭Viaual
Basic编辑器,如下图所示,然后进入下一步。
3、接着,回到Excel界面,公示栏输入“=getpy(A1)&RIGHT(B1,2)&RIGHT(C1,2)”,其中“=getpy(A1)”为求A1单元格的拼音首字母大写,后面是求B1和C1单元格后两位,这时按下回车键执行,如下图所示,然后进入下一步。
4、最后,完成上述步骤后,就得到LDH6582的结果了,如下图所示。这样,问题就解决了。
展开全部
在EXCEL中获取汉字首拼的方法如下:
1、依次点击【文件】-【选项】-【自定义功能区】-【主选项卡】-勾选【开发工具】。
2、点击确定后,导航菜单内将增加一项【开发工具】。
3、打开【开发工具】菜单,点击【Visual Basic】,弹出代码窗口,在窗口左侧空白处,点击右键,选择【插入】-【模块】。窗口右侧将出现白色背景框。
4、将以下内容粘贴到右侧框中:
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
5、点击菜单中的【保存】,弹出提示框后,点【是】,再点击【确定】。
6、关闭代码窗口,回到Excel。鼠标选定需要获取汉字首拼列的第一行。在函数框中输入=getpy(B2)(即调用自定义函数,获取B2单元格中汉字内容首字母),点击回车,就可看到获取到B2单元格中内容的首字母。
7、鼠标定位到单元格C2右下角,光标变成黑色十字,按住鼠标左键下拉,获取全部内容的首字母。完成。
1、依次点击【文件】-【选项】-【自定义功能区】-【主选项卡】-勾选【开发工具】。
2、点击确定后,导航菜单内将增加一项【开发工具】。
3、打开【开发工具】菜单,点击【Visual Basic】,弹出代码窗口,在窗口左侧空白处,点击右键,选择【插入】-【模块】。窗口右侧将出现白色背景框。
4、将以下内容粘贴到右侧框中:
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
5、点击菜单中的【保存】,弹出提示框后,点【是】,再点击【确定】。
6、关闭代码窗口,回到Excel。鼠标选定需要获取汉字首拼列的第一行。在函数框中输入=getpy(B2)(即调用自定义函数,获取B2单元格中汉字内容首字母),点击回车,就可看到获取到B2单元格中内容的首字母。
7、鼠标定位到单元格C2右下角,光标变成黑色十字,按住鼠标左键下拉,获取全部内容的首字母。完成。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
做好了,请点击下载试用一下吧,我也是网上抄回来的,如能帮到忙的,看在我抄的功劳份上请采纳一下哦 ^_^
追问
山楂 取首拼成 S楂
功能不全啊~
追答
再抄另外一个回来,再不行我撑不住啦 ^_^
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
=hztopy(A1)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
excel还能智能翻辞海?
追问
函数反正无法解决,宏或者VBA可以,求达人。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询