b2输入
=LOOKUP(CODE(B2),45217+{0,36,544,1101,1609,1793,2080,2560,2902,3845,4107,4679,5154,5397,5405,5689,6170,6229,7001,7481,7763,8472,9264},{"A","B","C","D","E","F","G","H","J","K","L","M","N","O","P","Q","R","S","T","W","X","Y","Z"})&LOOKUP(CODE(MID(B2,2,1)),45217+{0,36,544,1101,1609,1793,2080,2560,2902,3845,4107,4679,5154,5397,5405,5689,6170,6229,7001,7481,7763,8472,9264},{"A","B","C","D","E","F","G","H","J","K","L","M","N","O","P","Q","R","S","T","W","X","Y","Z"})&LOOKUP(CODE(MID(B2,3,1)),45217+{0,36,544,1101,1609,1793,2080,2560,2902,3845,4107,4679,5154,5397,5405,5689,6170,6229,7001,7481,7763,8472,9264},{"A","B","C","D","E","F","G","H","J","K","L","M","N","O","P","Q","R","S","T","W","X","Y","Z"})
向下托
提取首字母吗?
这个自定义函数可以
Function PY(ByVal rng As Range)
Dim i%, k%, str$
str = Replace(Replace(rng, " ", ""), " ", "")
For i = 1 To Len(str)
If Mid(str, i, 1) < "吖" Then
PY = PY & Mid(str, i, 1)
Else
k = 1
Do Until Mid("八擦哒妸发旮铪讥讥咔垃妈拿哦妑七然仨他哇哇哇夕丫匝咗", k, 1) > Mid(str, i, 1)
k = k + 1
Loop
PY = PY & Chr(64 + k)
End If
Next
End Function
单元格中输入=py(要提取的单元格地址)就可以,参见附件,注意要启用宏
刚帮你找了一下~ 在A1输入 =left(hztopy(B1),3) 下拉
http://zhidao.baidu.com/question/104836508.html