如何在excel中把汉字转换成拼音

如何在excel中把汉字转换成拼音,第1张

在Word里 用拼音指南 把拼音加上 2003sp3 版本的有这个自动加上的功能……

然后粘贴到 excel 中 用 PHONETIC 函数 提取……如果不喜欢这样的格式 那么逆序搜索一下 有人使用 VBA来提取的……无声调的 汉语拼音(类似英文的写法)……

wps文字,可以加上拼音,再拷到excel来。

如果只有这5个字,可以公式取拼音

D7公式:=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(C7,MID(B7,1,1),""),MID(B7,2,1),""),MID(B7,3,1),""),MID(B7,4,1),""),MID(B7,5,1),""),"("," "),")"," ")

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 >= 53689 And tmp <= 54480) Then

getpychar = "Y"

ElseIf (tmp >= 54481 And tmp <= 62289) Then

getpychar = "Z"

Else '如果不是中文,则不处理

getpychar = char

End If

End Function

Function getpy_简称(str)

For i = 1 To Len(str)

getpy_简称 = getpy_简称 & getpychar(Mid(str, i, 1))

Next i

End Function

' 假设需要定位的在A列,遍历判断A列

Sub result(str)

Dim i

For i = 1 To Rows(65000)End(xlUp)Row

If getpy_简称(Cells(i, 1)Value) = str Then

Cells(i, 1)Select

End If

Next i

End Sub

'测试

Sub a()

result ("SH") '调用测试了 ok的 但是区分大小写

End Sub

打开Excel->工具->宏->Viaual Basic编辑器

在d出来的窗口中对着VBAproject点右键->插入->模块

下面会出现一个名为"模块1",点击

在右边的空白栏中粘贴以下内容:

Function pinyin(p As String) As String

i = Asc(p)

Select Case i

Case -20319 To -20284: pinyin = "A"

Case -20283 To -19776: pinyin = "B"

Case -19775 To -19219: pinyin = "C"

Case -19218 To -18711: pinyin = "D"

Case -18710 To -18527: pinyin = "E"

Case -18526 To -18240: pinyin = "F"

Case -18239 To -17923: pinyin = "G"

Case -17922 To -17418: pinyin = "H"

Case -17417 To -16475: pinyin = "J"

Case -16474 To -16213: pinyin = "K"

Case -16212 To -15641: pinyin = "L"

Case -15640 To -15166: pinyin = "M"

Case -15165 To -14923: pinyin = "N"

Case -14922 To -14915: pinyin = "O"

Case -14914 To -14631: pinyin = "P"

Case -14630 To -14150: pinyin = "Q"

Case -14149 To -14091: pinyin = "R"

Case -14090 To -13319: pinyin = "S"

Case -13318 To -12839: pinyin = "T"

Case -12838 To -12557: pinyin = "W"

Case -12556 To -11848: pinyin = "X"

Case -11847 To -11056: pinyin = "Y"

Case -11055 To -2050: pinyin = "Z"

Case Else: pinyin = p

End Select

End Function

Function getpy(str)

For i = 1 To Len(str)

getpy = getpy & pinyin(Mid(str, i, 1))

Next i

End Function

复制到此结束,本行不复制

现在转换函数已编写完成!关掉此编缉的窗口。

要在Excel中使用,方法如下:

A1 A2

中国 =getpy(A1)

以上就是关于如何在excel中把汉字转换成拼音全部的内容,包括:如何在excel中把汉字转换成拼音、找个靠谱的excel汉字转换拼音方法、EXCEL中如何编VBA程序,用中文字符串拼音的首拼,来定位包含该字符串的单元格.等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9548824.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存