excel中如何批量转换姓名成全部拼音 excel怎么批量将汉字转换成拼音

经验直达:

  • excel怎么批量将汉字转换成拼音
  • excel中如何批量转换姓名成全部拼音

一、excel怎么批量将汉字转换成拼音



excel怎么批量将汉字转换成拼音?下面2345软件大全小编给大家介绍下 。
步骤
1、打开一张需要转换的Excel表格(如图所示,小编乱打的姓名 , 如有雷同 , 纯属巧合)
2、执行“工具→宏→Visual Basic编辑器”命令,或者直接按“Alt F11”组合键,进入Visual Basic编辑状态 。也就是图中所用的灰色的编辑界面
3、如图所示,点击“插入→模块”命令
4、插入一个新模块后 , 会看到如图所示的界面
5、由于字数限制,代码过多无法在这里输入 , 代码以TXT文本格式存在百度云盘中
下载链接: /s/1pLguxFd
然后将文本中的所有代码复制后,粘贴到“步骤4”中的空白处
6、代码粘贴完成后 , 直接关闭Visual Basic编辑窗口即可,返回到Excel编辑状态
7、这时自定义函数就可以使用用了,如:要把A列的第2行的内容转换成拼音,放在B列的第2个单元格,输入公式:=getpy(A2),这里的A2,是指需要转换的汉子单元格的坐标,最后按“回车”即可
8、在通过下拉,批量实现多行的内容转换
PS:会有部分汉子无法转换只能手动转换了,代码的问题,可能是汉字太多无法全部识别吧 , 但是大部分转换成功后,其它个别的就好办多了,本实例也列出2个无法转换的汉字
注意事项
会有部分汉子无法转换只能手动转换了,代码的问题,可能是汉子太多无法全部识别吧,但是大部分转换成功后,其它个别的就好办多了



二、excel中如何批量转换姓名成全部拼音


【excel中如何批量转换姓名成全部拼音 excel怎么批量将汉字转换成拼音】唯一的办法就是VBA:

Function Getpy(ByVal X As String) As String
Dim iAs Integer
For i = 1 To Len(X)
If Mid(X, i, 1) <> "" And Asc(Mid(X, i, 1)) < 0 Then Getpy = Getpy & pinyin(Mid(X, i, 1))
Next
Getpy = UCase(Getpy)
End Function
Function pinyin(ByVal X As String) As String
Dim iAs Integer
Const hanzi = "啊芭擦搭蛾发噶哈击喀垃妈拿哦啪期然撒塌挖昔压匝座ABCDEFGHJKLMNOPQRSTWXYZZ"
If X = "座" Then pinyin = "Z"
For i = 1 To 23
If Asc(X) >= Asc(Mid(hanzi, i, 1)) And Asc(X) < Asc(Mid(hanzi, i1, 1)) Then
pinyin = Mid(hanzi, 24i, 1)
Exit For
End If
Next
End Function

相关经验推荐