用Excel收集统计个人信息时,会遇见各种各样的问题。例如:我们需要将中文姓名转换成首字母拼音的形式,这时候该怎么操作呢?
你还在一个一个的输入吗?这样太麻烦了,接下来让我们使用VBA,快速将中文转换成拼音首字母的形式,简单便捷,快来试试吧!
打开MicrosoftExcel工作簿,如果Excel文件后缀名是“xlsx”,请先将Excel文档另存为“xls”或者“xlsm”类型。
右键单击Sheet1工作表,选中右键菜单中的查看代码。
在MicrosoftVisualBasicforApplications窗口中,右键单击工程资源管理器窗口中的空白位置,将鼠标指针移动至插入,选中模块。
代码区域
FunctionGetpychar(char)
temp=65536+Asc(char)
If(temp=45217Andtemp=45252)Then
Getpychar="A"
ElseIf(temp=45253Andtemp=45760)Then
Getpychar="B"
ElseIf(temp=45761Andtemp=46317)Then
Getpychar="C"
ElseIf(temp=46318Andtemp=46825)Then
Getpychar="D"
ElseIf(temp=46826Andtemp=47009)Then
Getpychar="E"
ElseIf(temp=47010Andtemp=47296)Then
Getpychar="F"
ElseIf(temp=47297Andtemp=47613)Then
Getpychar="G"
ElseIf(temp=47614Andtemp=48118)Then
Getpychar="H"
ElseIf(temp=48119Andtemp=49061)Then
Getpychar="J"
ElseIf(temp=49062Andtemp=49323)Then
Getpychar="K"
ElseIf(temp=49324Andtemp=49895)Then
Getpychar="L"
ElseIf(temp=49896Andtemp=50370)Then
Getpychar="M"
ElseIf(temp=50371Andtemp=50613)Then
Getpychar="N"
ElseIf(temp=50614Andtemp=50621)Then
Getpychar="O"
ElseIf(temp=50622Andtemp=50905)Then
Getpychar="P"
ElseIf(temp=50906Andtemp=51386)Then
Getpychar="Q"
ElseIf(temp=51387Andtemp=51445)Then
Getpychar="R"
ElseIf(temp=51446Andtemp=52217)Then
Getpychar="S"
ElseIf(temp=52218Andtemp=52697)Then
Getpychar="T"
ElseIf(temp=52698Andtemp=52979)Then
Getpychar="W"
ElseIf(temp=52980Andtemp=53640)Then
Getpychar="X"
ElseIf(temp=53689Andtemp=54480)Then
Getpychar="Y"
ElseIf(temp=54481Andtemp=62289)Then
Getpychar="Z"
Else
Getpychar=char
If
Function
FunctionGetpy(str)
Fora=1ToLen(str)
Getpy=GetpyGetpychar(Mid(str,a,1))
Nexta
Function
例如单元格区域C:C是中文姓名,需要在单元格区域D:D转换成拼音首字母形式。只需在D2单元格中输入函数“=Getpy(C2)”,然后进行单元格填充就可以啦。
是不是非常简单便捷呢?抓紧时间把代码收藏起来吧,有备无患。




