excel中如何取汉字的拼音首字母
- 格式:xls
- 大小:17.00 KB
- 文档页数:2
wps excel提取汉字首字母的公式
在使用wpsexcel表格时,经常需要将汉字转换为拼音首字母,这样可以方便地进行排序和分类。
下面介绍一种提取汉字首字母的公式。
1. 首先,在excel表格中选中一个空白单元格,输入以下公式: =LEFT(拼音(A1),1)
其中,A1是需要提取首字母的汉字所在的单元格,拼音函数是一个wps excel内置的函数,可以将汉字转换为拼音。
2. 按下回车键,表格中就会自动显示该汉字的首字母。
3. 如果需要对整个表格中的汉字进行首字母提取,可以将公式拖动到其他单元格中,自动复制公式并提取汉字首字母。
4. 若需要提取的是多个汉字的首字母,可以使用以下公式:
=LEFT(CONCATENATE(拼音(A1),拼音(B1),拼音(C1)),1) 其中,A1、B1、C1是需要提取首字母的汉字所在的单元格,CONCATENATE函数可以将多个字符串合并为一个字符串。
这样就可以将多个汉字的首字母提取出来并显示在一个单元格中。
- 1 -。
表格中提取词语首字母的方法
要提取表格中词语的首字母,你可以使用Excel或类似的电子
表格软件来实现。
以下是一种可能的方法:
1. 使用公式提取首字母,在Excel中,你可以使用LEFT函数
来提取单元格中文本的首字母。
假设你要提取A列中单元格的首字母,你可以在B列中使用以下公式,=LEFT(A1,1),然后拖动填充手
柄以应用到其他单元格。
这将在B列中显示A列中单元格的首字母。
2. 使用文本转换功能,在Excel中,你还可以使用文本转换功
能来将单元格中的文本转换为大写或小写,然后提取首字母。
例如,你可以使用函数=UPPER(LEFT(A1,1))来将A列中单元格的首字母转
换为大写形式。
3. 使用宏,如果你熟悉VBA编程,你还可以编写一个宏来自动
提取表格中单元格的首字母。
这样可以实现自动化处理大批量数据
的目的。
总之,以上是几种常见的方法,你可以根据具体情况选择适合
你的方法来提取表格中词语的首字母。
希望这些方法能够帮到你。
方法一:VBA自定义函数"=hztopy()"下面是一个VBA自定义函数,工具->宏->Visual Basic编辑器->,插入模块,在VBA编辑器里面->插入->模块->贴入下述代码,(按ALT+F11,插入模块,在右面窗口中粘贴下面代码)那么,比如在A3中有"进退两难",则在B3中输入"=hztopy(A3)",则会得到"JTLN"。
不过此法有时候也会出错,比如"皓、鑫、婷、雯、奕"等,就无法提取汉字拼音首字母。
Function hztopy(hzpy As String) As StringDim hzstring As String, pystring As StringDim hzpysum As Integer, hzi As Integer, hzpyhex As Integerhzstring = Trim(hzpy)hzpysum = Len(Trim(hzstring))pystring = ""For hzi = 1 To hzpysumhzpyhex = "&H" + Hex(Asc(Mid(hzstring, hzi, 1)))Select Case hzpyhexCase &HB0A1 To &HB0C4: pystring = pystring + "A"Case &HB0C5 To &HB2C0: pystring = pystring + "B"Case &HB2C1 To &HB4ED: pystring = pystring + "C"Case &HB4EE To &HB6E9: pystring = pystring + "D"Case &HB6EA To &HB7A1: pystring = pystring + "E"Case &HB7A2 To &HB8C0: pystring = pystring + "F"Case &HB8C1 To &HB9FD: pystring = pystring + "G"Case &HB9FE To &HBBF6: pystring = pystring + "H"Case &HBBF7 To &HBFA5: pystring = pystring + "J"Case &HBFA6 To &HC0AB: pystring = pystring + "K"Case &HC0AC To &HC2E7: pystring = pystring + "L"Case &HC2E8 To &HC4C2: pystring = pystring + "M"Case &HC4C3 To &HC5B5: pystring = pystring + "N"Case &HC5B6 To &HC5BD: pystring = pystring + "O"Case &HC5BE To &HC6D9: pystring = pystring + "P"Case &HC6DA To &HC8BA: pystring = pystring + "Q"Case &HC8BB To &HC8F5: pystring = pystring + "R"Case &HC8F6 To &HCBF9: pystring = pystring + "S"Case &HCBFA To &HCDD9: pystring = pystring + "T"Case &HEDC5: pystring = pystring + "T"Case &HCDDA To &HCEF3: pystring = pystring + "W"Case &HCEF4 To &HD1B8: pystring = pystring + "X"Case &HD1B9 To &HD4D0: pystring = pystring + "Y"Case &HD4D1 To &HD7F9: pystring = pystring + "Z"Case Elsepystring = pystring + Mid(hzstring, hzi, 1)End SelectNexthztopy = pystringEnd Function方法二:VBA自定义函数"=getpy()"下面是一个VBA自定义函数,工具->宏->Visual Basic编辑器->,插入模块,在VBA编辑器里面->插入->模块->贴入上述代码,那么。
在日常工作和学习中,我们经常需要对文本进行处理和分析,尤其是对于中文文本。
在处理中文文本时,有时会遇到需要将汉字转换为拼音的需求。
而在Excel中,获得汉字的首字母则成为了一个常见的需求。
那么,如何在Excel中获得汉字的首字母呢?我们可以利用Excel内置的函数来实现这一目标。
在Excel中,可以使用VB脚本编写一个自定义函数来获取汉字的首字母。
具体步骤如下:1. 打开Excel表格,按下ALT + F11,打开VB编辑器。
2. 在VB编辑器中,插入一个新模块。
3. 在新模块中输入以下VB脚本代码:```vbFunction GetFirstLetter(str As String) As StringDim pinyin As StringDim i As IntegerDim ch As Stringpinyin = ""For i = 1 To Len(str)ch = Mid(str, i, 1)pinyin = pinyin &Left(Application.WorksheetFunction.Phonetic(ch), 1)Next iGetFirstLetter = pinyinEnd Function```4. 编译保存后,返回Excel表格界面。
5. 在需要获取汉字首字母的单元格中输入`=GetFirstLetter(A1)`,其中A1为需要转换的汉字所在的单元格。
6. 按下Enter键,即可在目标单元格中获取到相应汉字的首字母。
通过上述方法,我们可以轻松地在Excel中获得汉字的首字母,而且可以将这个函数在多个单元格中批量应用,提高工作效率。
除了使用VB脚本自定义函数外,我们还可以借助Excel内置的函数来实现汉字首字母的获取。
在Excel中,有一个叫做UNICODE的函数,可以返回指定字符的Unicode编码。
而对于汉字来说,其首字母的Unicode编码可以作为其拼音的首字母。
方法一:VBA自定义函数"=hztopy()"下面是一个VBA自定义函数,工具->宏->Visual Basic编辑器->,插入模块,在VBA编辑器里面->插入->模块->贴入下述代码,(按ALT+F11,插入模块,在右面窗口中粘贴下面代码)那么,比如在A3中有"进退两难",则在B3中输入"=hztopy(A3)",则会得到"JTLN"。
不过此法有时候也会出错,比如"皓、鑫、婷、雯、奕"等,就无法提取汉字拼音首字母。
Function hztopy(hzpy As String) As StringDim hzstring As String, pystring As StringDim hzpysum As Integer, hzi As Integer, hzpyhex As Integerhzstring = Trim(hzpy)hzpysum = Len(Trim(hzstring))pystring = ""For hzi = 1 To hzpysumhzpyhex = "&H" + Hex(Asc(Mid(hzstring, hzi, 1)))Select Case hzpyhexCase &HB0A1 To &HB0C4: pystring = pystring + "A"Case &HB0C5 To &HB2C0: pystring = pystring + "B"Case &HB2C1 To &HB4ED: pystring = pystring + "C"Case &HB4EE To &HB6E9: pystring = pystring + "D"Case &HB6EA To &HB7A1: pystring = pystring + "E"Case &HB7A2 To &HB8C0: pystring = pystring + "F"Case &HB8C1 To &HB9FD: pystring = pystring + "G"Case &HB9FE To &HBBF6: pystring = pystring + "H"Case &HBBF7 To &HBFA5: pystring = pystring + "J"Case &HBFA6 To &HC0AB: pystring = pystring + "K"Case &HC0AC To &HC2E7: pystring = pystring + "L"Case &HC2E8 To &HC4C2: pystring = pystring + "M"Case &HC4C3 To &HC5B5: pystring = pystring + "N"Case &HC5B6 To &HC5BD: pystring = pystring + "O"Case &HC5BE To &HC6D9: pystring = pystring + "P"Case &HC6DA To &HC8BA: pystring = pystring + "Q"Case &HC8BB To &HC8F5: pystring = pystring + "R"Case &HC8F6 To &HCBF9: pystring = pystring + "S"Case &HCBFA To &HCDD9: pystring = pystring + "T"Case &HEDC5: pystring = pystring + "T"Case &HCDDA To &HCEF3: pystring = pystring + "W"Case &HCEF4 To &HD1B8: pystring = pystring + "X"Case &HD1B9 To &HD4D0: pystring = pystring + "Y"Case &HD4D1 To &HD7F9: pystring = pystring + "Z"Case Elsepystring = pystring + Mid(hzstring, hzi, 1)End SelectNexthztopy = pystringEnd Function方法二:VBA自定义函数"=getpy()"下面是一个VBA自定义函数,工具->宏->Visual Basic编辑器->,插入模块,在VBA编辑器里面->插入->模块->贴入上述代码,那么。
在EXECL中,按ALT+F11,插入---模块复制下列代码:Function hztopy(hzpy As String) As StringDim hzstring As String, pystring As StringDim hzpysum As Integer, hzi As Integer, hzpyhex As Integerhzstring = Trim(hzpy)hzpysum = Len(Trim(hzstring))pystring = ""For hzi = 1 To hzpysumhzpyhex = "&H" + Hex(Asc(Mid(hzstring, hzi, 1)))Select Case hzpyhexCase &HB0A1 To &HB0C4: pystring = pystring + "A"Case &HB0C5 To &HB2C0: pystring = pystring + "B"Case &HB2C1 To &HB4ED: pystring = pystring + "C"Case &HB4EE To &HB6E9: pystring = pystring + "D"Case &HB6EA To &HB7A1: pystring = pystring + "E"Case &HB7A2 To &HB8C0: pystring = pystring + "F"Case &HB8C1 To &HB9FD: pystring = pystring + "G"Case &HB9FE To &HBBF6: pystring = pystring + "H"Case &HBBF7 To &HBFA5: pystring = pystring + "J"Case &HBFA6 To &HC0AB: pystring = pystring + "K"Case &HC0AC To &HC2E7: pystring = pystring + "L"Case &HC2E8 To &HC4C2: pystring = pystring + "M"Case &HC4C3 To &HC5B5: pystring = pystring + "N"Case &HC5B6 To &HC5BD: pystring = pystring + "O"Case &HC5BE To &HC6D9: pystring = pystring + "P"Case &HC6DA To &HC8BA: pystring = pystring + "Q"Case &HC8BB To &HC8F5: pystring = pystring + "R"Case &HC8F6 To &HCBF9: pystring = pystring + "S"Case &HCBFA To &HCDD9: pystring = pystring + "T"Case &HEDC5: pystring = pystring + "T"Case &HCDDA To &HCEF3: pystring = pystring + "W"Case &HCEF4 To &HD1B8: pystring = pystring + "X"Case &HD1B9 To &HD4D0: pystring = pystring + "Y"Case &HD4D1 To &HD7F9: pystring = pystring + "Z"Case Elsepystring = pystring + Mid(hzstring, hzi, 1)End SelectNexthztopy = pystringEnd Function比如在A1输入小燕子耳坠子7.8 则在其他空白单元格输入=hztopy(A1) 回车执行即可。
Excel怎么快速提取中⽂的⾸字母呢?右键单击Sheet1⼯作表,选中右键菜单中的查看代码。
Function Getpychar(char)temp = 65536 + Asc(char)If (temp >= 45217And temp <= 45252) ThenGetpychar = "A"ElseIf (temp >= 45253And temp <= 45760) ThenGetpychar = "B"ElseIf (temp >= 45761And temp <= 46317) ThenGetpychar = "C"ElseIf (temp >= 46318And temp <= 46825) ThenGetpychar = "D"ElseIf (temp >= 46826And temp <= 47009) ThenGetpychar = "E"ElseIf (temp >= 47010And temp <= 47296) ThenGetpychar = "F"ElseIf (temp >= 47297And temp <= 47613) ThenGetpychar = "G"ElseIf (temp >= 47614And temp <= 48118) ThenGetpychar = "H"ElseIf (temp >= 48119And temp <= 49061) ThenGetpychar = "J"ElseIf (temp >= 49062And temp <= 49323) ThenGetpychar = "K"ElseIf (temp >= 49324And temp <= 49895) ThenGetpychar = "L"ElseIf (temp >= 49896And temp <= 50370) ThenGetpychar = "M"ElseIf (temp >= 50371And temp <= 50613) ThenGetpychar = "N"ElseIf (temp >= 50614And temp <= 50621) ThenGetpychar = "O"ElseIf (temp >= 50622And temp <= 50905) ThenGetpychar = "P"ElseIf (temp >= 50906And temp <= 51386) ThenGetpychar = "Q"ElseIf (temp >= 51387And temp <= 51445) ThenGetpychar = "R"ElseIf (temp >= 51446And temp <= 52217) ThenGetpychar = "S"ElseIf (temp >= 52218And temp <= 52697) Then Getpychar = "T"ElseIf (temp >= 52698And temp <= 52979) Then Getpychar = "W"ElseIf (temp >= 52980And temp <= 53640) Then Getpychar = "X"ElseIf (temp >= 53689And temp <= 54480) Then Getpychar = "Y"ElseIf (temp >= 54481And temp <= 62289) Then Getpychar = "Z"ElseGetpychar = charEnd IfEnd FunctionFunction Getpy(str)For a = 1To Len(str)Getpy = Getpy & Getpychar(Mid(str, a, 1))Next aEnd Function函数⽤法。
Excel-VBA自定义函数取姓名的汉语拼音首字母应用场景用函数取汉语拼音的首字母知识要点1:Option Compare语句,设置缺省的字符比较方法,只能在模块级使用,语法Option Compare {Binary | Text | Database} Option Compare Binary ,按排序顺序进行字符串比较A<B<C<a<b<?等,Option Compare text 不区分大小写进行字符串比较A=a2:将所有拼音首字母相同的第一个汉字取出来组成一个字符串,例如拉、洛、梁等,拉=la最靠前,取拉3:将参数中的每个字符与参照字符串中每个比较,统计参照字符串中有多少字符小于参数中的字符,如果有10个,通过chr函数,转换成第9个英文字符J,非汉字保持不变Option Compare Text '比较方式为text'声明函数PY,有一个必选参数,为特引用的单元格或者字符串Function PY(Rng As Range)Application.Volatile '声明为易失性函数Dim i As Integer, k As Integer, Str As StringIf Len(Rng) = 0 Then PY = '': Exit Function '如果引用单元格空白,则返回空文本If Not IsNumeric(Rng) Then '如果不是数值Str = WorksheetFunction.Trim(Rng) '去除空格格后,赋予变量strFor i = 1 To Len(Str) '遍历所有字符If Mid(Str, i, 1) < '啊' Then '如果小于啊,表示不是汉字PY = PY & Mid(Str, i, 1) '保留原字符不变Elsek = 1'将字符串中每个字符与参数中的字符进行比较,统计字符串中大于参数中的字符的个数,得到变量 kDo Until Mid$('八嚓哒妸发旮铪讥讥咔垃妈拿哦妑七然仨他哇哇哇夕丫匝咗', k, 1) > Mid$(Str, i, 1)k = k 1LoopPY = PY & Chr(64 k) '根据K值得到大写的英文字母(chr(65)为第一个字母AEnd IfNextEnd IfEnd Function。
excel姓名首字母缩写
excel姓名首字母缩写
1、首先我们打开excel表,再将员工的姓名输入到表中。
2、再用鼠标选择所有需要提取字母的名字,通过Ctrl+C复制。
3、再打开word文档,将刚刚复制好的姓名,无格式粘贴到word中
4、姓名复制到word文档后,鼠标全选姓名,在顶部开始菜单中找到“拼音指南”并鼠标点击。
5、弹出“拼音指南”对话框后,我们可以看到预览中,在文字上方已经显示了拼音,再点击确定按钮,我们就可以看到word文档中的姓名上方已经添加了拼音了。
6、接下来,我们鼠标全选姓名,将添加好拼音的姓名复制回excel表中。
7、姓名复制到excel后,我们就要提取姓名中第一个汉字的首字母了,鼠标选中D3单元格,输入函数公式
=LEFT(PHONETIC(C3),1),按Enter回车键,我们就把姓名中的第一个汉字首字母提取出来了。
8、然后鼠标选中D3单元格,将鼠标放至D3单元格下方,出现黑色十字架后,双击鼠标,就快速把其余姓名的第一个汉字的首字母提取出来了。
打开Excel->工具->宏->Viaual Basic编辑器在弹出来的窗口中对着VBAproject点右键->插入->模块下面会出现一个名为"模块1",点击在右边的空白栏中粘贴以下内容:Function pinyin(p As String) As Stringi = Asc(p)Select Case iCase -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 = pEnd SelectEnd FunctionFunction getpy(str)For i = 1 To Len(str)getpy = getpy & pinyin(Mid(str, i, 1))Next iEnd Function********复制到此结束,本行不复制*******现在转换函数已编写完成!关掉此编缉的窗口。
excel查找函数应用:如何提取姓名的拼音首字母编按:哈喽,大家好!如果此刻让你快速提取汉字拼音的首字母,你会怎么做呢?相信大多数小伙伴面对这个问题时,都会蒙圈,可能会想“这应该得用VBA解决吧,函数应该不行吧。
”其实呀,这个问题用大家都会的VLOOKUP函数就能搞定,赶紧来看看吧!例如A列是员工姓名,需要在B列填写对应的拼音首字母:如果遇上这种问题该怎么办?用户来说,难道真的只能一个一个手动输入吗?实际上使用一个大家都非常熟悉的VLOOKUP函数也是可以搞定这个问题的,不过公式嘛,就有点吓人,是这个样子的:看到这个公式是不是都蒙圈了。
可千万不要被这个表面上看起来很夸张的公式吓到,我们换一种写法,也许你就看明白了。
怎么样,这个公式是不是有点看明白了。
与第一个公式的区别就在于,后面这个公式是把VLOOKUP的第二参数放在单元格区域中了,公式的本质并没有什么区别。
因为名单中的姓名都不超过三个字,所以先用MID函数将每个字单独提取出来,使用VLOOKUP得到每个字的拼音首字母,再把三个VLOOKUP函数用&连接起来。
因此公式的核心其实是=VLOOKUP(MID(A2,1,1),$D$1:$E$24,2)。
对于VLOOKUP函数的用法,大家应该都比较熟悉了,格式是:VLOOKUP(查找值,查找区域,在第几列找,怎么找)。
在本例中,要重点说明的有下面几个要点:1.第一参数可以使用公式,本例中分别使用MID(A2,1,1)、MID(A2,2,1)和MID(A2,3,1)作为查找值;2.本例中的VLOOKUP函数只用了三个参数,同时省略了第三参数2后面的逗号,这种写法表示使用了VLOOKUP函数模糊匹配,与第四参数为1的功能相同;3.关于省略VLOOKUP函数最后一个参数的意义,一定要注意一点,省略参数而不省略逗号时,表示精确匹配,与第四参数为0的功能相同;4.有时候为了避免使用单元格区域作为查找区域,第二参数可以使用常量数组的方式,本例中开头的公式就是用到了常量数组。
方法一:VBA自定义函数"=hztopy()"下面是一个VBA自定义函数,工具->宏->Visual Basic编辑器->,插入模块,在VBA编辑器里面->插入->模块->贴入下述代码,(按ALT+F11,插入模块,在右面窗口中粘贴下面代码)那么,比如在A3中有"进退两难",则在B3中输入"=hztopy(A3)",则会得到"JTLN"。
不过此法有时候也会出错,比如"皓、鑫、婷、雯、奕"等,就无法提取汉字拼音首字母。
Function hztopy(hzpy As String) As StringDim hzstring As String, pystring As StringDim hzpysum As Integer, hzi As Integer, hzpyhex As Integerhzstring = Trim(hzpy)hzpysum = Len(Trim(hzstring))pystring = ""For hzi = 1 To hzpysumhzpyhex = "&H" + Hex(Asc(Mid(hzstring, hzi, 1)))Select Case hzpyhexCase &HB0A1 To &HB0C4: pystring = pystring + "A"Case &HB0C5 To &HB2C0: pystring = pystring + "B"Case &HB2C1 To &HB4ED: pystring = pystring + "C"Case &HB4EE To &HB6E9: pystring = pystring + "D"Case &HB6EA To &HB7A1: pystring = pystring + "E"Case &HB7A2 To &HB8C0: pystring = pystring + "F"Case &HB8C1 To &HB9FD: pystring = pystring + "G"Case &HB9FE To &HBBF6: pystring = pystring + "H"Case &HBBF7 To &HBFA5: pystring = pystring + "J"Case &HBFA6 To &HC0AB: pystring = pystring + "K"Case &HC0AC To &HC2E7: pystring = pystring + "L"Case &HC2E8 To &HC4C2: pystring = pystring + "M"Case &HC4C3 To &HC5B5: pystring = pystring + "N"Case &HC5B6 To &HC5BD: pystring = pystring + "O"Case &HC5BE To &HC6D9: pystring = pystring + "P"Case &HC6DA To &HC8BA: pystring = pystring + "Q"Case &HC8BB To &HC8F5: pystring = pystring + "R"Case &HC8F6 To &HCBF9: pystring = pystring + "S"Case &HCBFA To &HCDD9: pystring = pystring + "T"Case &HEDC5: pystring = pystring + "T"Case &HCDDA To &HCEF3: pystring = pystring + "W"Case &HCEF4 To &HD1B8: pystring = pystring + "X"Case &HD1B9 To &HD4D0: pystring = pystring + "Y"Case &HD4D1 To &HD7F9: pystring = pystring + "Z"Case Elsepystring = pystring + Mid(hzstring, hzi, 1)End SelectNexthztopy = pystringEnd Function方法二:VBA自定义函数"=getpy()"下面是一个VBA自定义函数,工具->宏->Visual Basic编辑器->,插入模块,在VBA编辑器里面->插入->模块->贴入上述代码,那么。
方法/步骤1.首先,打开Excel,同时按下Alt+F11键,打开VBE界面,如下图所示。
在VBE界面中,单击图片中所示的左上角空白处,选择“插入“,”模块“。
2.此时,就插入了一个模块,后面的代码就要放到这个模块中,保证右侧空白区域是模块代码的编辑区(最保险的做法是双击模块),然后执行下一步操作。
3.将下面的代码全部复制粘贴到空白区域。
Function pinyin(p As String) As Stringi = Asc(p)Select Case iCase -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 = pEnd SelectEnd FunctionFunction getpy(str)For i = 1 To Len(str)getpy = getpy& pinyin(Mid(str, i, 1)) Next iEnd Function4.然后关闭这个新界面,返回Excel,就可以像Excel自带的函数一样使用这个自定义的Getpy函数了,它只有一个参数,参数可以直接指定单元格,也可以直接输入字符。
excel提取汉字的拼音首字母按ALT+F11,插入模块,在右面窗口中粘贴下面代码在某空白格中输入:=pyzm(A1) 即可Function pyzm(hzpy As String) As StringDim hzstring As String, pystring As StringDim hzpysum As Integer, hzi As Integer, hzpyhex As Integer hzstring = Trim(hzpy)hzpysum = Len(Trim(hzstring))pystring = ""For hzi = 1 To hzpysumhzpyhex = "&H" + Hex(Asc(Mid(hzstring, hzi, 1)))Select Case hzpyhexCase &HB0A1 To &HB0C4: pystring = pystring + "A"Case &HB0C5 To &HB2C0: pystring = pystring + "B"Case &HB2C1 To &HB4ED: pystring = pystring + "C"Case &HB4EE To &HB6E9: pystring = pystring + "D"Case &HB6EA To &HB7A1: pystring = pystring + "E"Case &HB7A2 To &HB8C0: pystring = pystring + "F"Case &HB8C1 To &HB9FD: pystring = pystring + "G"Case &HB9FE To &HBBF6: pystring = pystring + "H"Case &HBBF7 To &HBFA5: pystring = pystring + "J"Case &HBFA6 To &HC0AB: pystring = pystring + "K"Case &HC0AC To &HC2E7: pystring = pystring + "L"Case &HC2E8 To &HC4C2: pystring = pystring + "M"Case &HC4C3 To &HC5B5: pystring = pystring + "N"Case &HC5B6 To &HC5BD: pystring = pystring + "O"Case &HC5BE To &HC6D9: pystring = pystring + "P"Case &HC6DA To &HC8BA: pystring = pystring + "Q"Case &HC8BB To &HC8F5: pystring = pystring + "R"Case &HC8F6 To &HCBF9: pystring = pystring + "S"Case &HCBFA To &HCDD9: pystring = pystring + "T"Case &HEDC5: pystring = pystring + "T"Case &HCDDA To &HCEF3: pystring = pystring + "W"Case &HCEF4 To &HD1B8: pystring = pystring + "X"Case &HD1B9 To &HD4D0: pystring = pystring + "Y"Case &HD4D1 To &HD7F9: pystring = pystring + "Z"Case Elsepystring = pystring + Mid(hzstring, hzi, 1)End SelectNextpyzm = pystringEnd Function在Excel里面怎么自动提取字段内汉字的拼音首字母1、自动提取字段的第一个汉字的拼音首字母=LOOKUP(CODE(LEFT(A1,1)),45217+{0,36,544,1101,1609,1793,2080,2560,290 2,3845,4107,4679,5154,5397,5405,5689,6170,6229,7001,7481,7763,8472,92 64},{"A","B","C","D","E","F","G","H","J","K","L","M","N","O","P","Q", "R","S","T","W","X","Y","Z"})2、自动提取字段的全部汉字的拼音首字母下面是一个VBA自定义函数,按ALT+F11,插入模块,在右面窗口中粘贴下面代码。
名字转换为首字母(VBA自定义函数)1、打开EXCEL2、按 ALT+F11 ,点击插入-插入模块,在右面窗口中粘贴下面代码,直接关闭窗口3、输入公式=hztopy(A1),填充所有单元格4、选中所有缩写,复制-选择性粘贴-数值(因为是自定义函数,只有在当前文件中可以显示结果,其他电脑因没有公式而显示错误)5、使用条件格式,检索出含有汉字的单元格:先点中一个单元格(设为D5),条件格式-新建格式规则-使用公式确定要设置格式的单元格:在下面对话框中输入公式 =LENB(D5)>LEN(D5),自己设置格式,确定后退出,再把该单元格的格式用格式刷刷所有单元格。
有汉字的出现所设格式6、选择自定义排序-排序依据“单元格颜色”-次序“无单元格颜色”“在底端”-确定。
7、将汉字手动改写为相应的字母。
8、核对多音字。
注:以上方法只可以在当前文件夹使用,如何将宏保存,使自定义函数可以在所有文件夹中使用1、新建一个EXCEL2、按 ALT+F11 ,点击插入-插入模块,在右面窗口中粘贴下面代码,直接关闭窗口3、另存为-其他格式-文件名改为宏名称、保存类型选择“EXCEL加载宏(*,xlam)”,文件将自动保存在C:\Users\111\AppData\Roaming\Microsoft\AddIns文件夹。
4、打开需要工作的EXLEL,点击开始-EXCEL选项-加载项-转到(G)...-选中上面保存的宏名称-确定。
这样,在该电脑的所有EXCEL中,都可以直接使用自定义公式。
代码(只复制星号内的内容)******************************************************************************* Function hztopy(hzpy As String) As StringDim hzstring As String, pystring As StringDim hzpysum As Integer, hzi As Integer, hzpyhex As Integerhzstring = Trim(hzpy)hzpysum = Len(Trim(hzstring))pystring = ""For hzi = 1 To hzpysumhzpyhex = "&H" + Hex(Asc(Mid(hzstring, hzi, 1)))Select Case hzpyhexCase &HB0A1 To &HB0C4: pystring = pystring + "A"Case &HB0C5 To &HB2C0: pystring = pystring + "B"Case &HB2C1 To &HB4ED: pystring = pystring + "C"Case &HB4EE To &HB6E9: pystring = pystring + "D"Case &HB6EA To &HB7A1: pystring = pystring + "E"Case &HB7A2 To &HB8C0: pystring = pystring + "F"Case &HB8C1 To &HB9FD: pystring = pystring + "G"Case &HB9FE To &HBBF6: pystring = pystring + "H"Case &HBBF7 To &HBFA5: pystring = pystring + "J"Case &HBFA6 To &HC0AB: pystring = pystring + "K"Case &HC0AC To &HC2E7: pystring = pystring + "L"Case &HC2E8 To &HC4C2: pystring = pystring + "M"Case &HC4C3 To &HC5B5: pystring = pystring + "N"Case &HC5B6 To &HC5BD: pystring = pystring + "O"Case &HC5BE To &HC6D9: pystring = pystring + "P"Case &HC6DA To &HC8BA: pystring = pystring + "Q"Case &HC8BB To &HC8F5: pystring = pystring + "R"Case &HC8F6 To &HCBF9: pystring = pystring + "S"Case &HCBFA To &HCDD9: pystring = pystring + "T"Case &HEDC5: pystring = pystring + "T"Case &HCDDA To &HCEF3: pystring = pystring + "W"Case &HCEF4 To &HD1B8: pystring = pystring + "X"Case &HD1B9 To &HD4D0: pystring = pystring + "Y"Case &HD4D1 To &HD7F9: pystring = pystring + "Z"Case Elsepystring = pystring + Mid(hzstring, hzi, 1)End SelectNexthztopy = pystringEnd Function*******************************************************************************。
使用E x c e l快速获取姓名拼音The final edition was revised on December 14th, 2020.使用Excel快速获取姓名拼音召开会议或进行系统成员管理时,可能会需要批量获取姓名的汉语拼音,使用以下方法可以一劳永逸:1、新建一电子表格文件,内含两张表,一张命名为“转译”,一张命名为“资料”。
2、将以下内容粘至资料表的A1单元格(将会布满资料表的A1:B23单元格。
如果不好用鼠标选择,可将鼠标点在第一汉字前,按住Shift+向下键直到选完,然后按Ctrl+C复制,粘贴时右击鼠标后选择弹出的粘贴菜单的右侧那个去掉格式的按钮粘贴)吖 A八 B擦 C耷 D婀 E发 F噶G哈H肌J喀K垃L妈M拿N啪P期Q然R撒S塌T挖W西X压Y匝Z3、将以下资料粘至资料表的D1单元格(将会布满资料表的D1:E400单元格)吖 a安an肮ang凹ao八ba掰bai班ban邦bang包bao杯bei奔ben伻beng边bian 标biao 瘪bie 邠bin 冰bing 拨bo钸bu擦ca偲cai 参can 仓cang 糙cao 册ce参cen 噌ceng 叉cha 拆chai 觇chan 伥chang 抄chao 车che 抻chen 柽cheng充chong 抽chou 出chu欻chua 揣chuai 川chuan 窗chuang 吹chui 春chun 逴chuo 刺ci匆cong 凑cou粗cu汆cuan 崔cui村cun搓cuo咑da呆dai丹dan当dang 刀dao扽den 灯deng 氐di 嗲dia 掂dian 刁diao 爹die 丁ding 丢diu 东dong 兜dou 阇du 端duan 堆dui 吨dun 多duo 屙 e欸ei 奀en 鞥eng 儿er 发fa 帆fan飞fei 分fen 丰feng 佛fo缶fou 夫fu旮ga该gai 干gan 冈gang 皋gao 戈ge给gei 根gen 更geng 工gong 勾gou 估gu瓜gua 乖guai 关guan 光guang 归gui郭guo 哈ha孩hai 顸han 夯hang 蒿hao 呵he黑hei 痕hen 亨heng 轰hong 齁hou 乎hu花hua 怀huai 欢huan 肓huang 灰hui 昏hun 豁huo 几ji加jia 戋jian交jiao 节jie 巾jin 茎jing 垧jiong 纠jiu 居ju捐juan 撅jue 军jun 咔ka开kai 刊kan 康kang 尻kao 坷ke肯ken 阬keng 空kong 抠kou 刳ku夸kua 蒯kuai匡kuang 亏kui 坤kun 扩kuo 垃la来lai 兰lan 啷lang 捞lao 乐le勒lei 棱leng 黎li边lian 良liang 撩liao 咧lie 拎lin 令ling 溜liu 龙long 搂lou 撸lu抡lun 罗luo 驴lv 掠lve 妈ma 埋mai 嫚man 牤mang 猫mao 么me 没mei 闷men 蒙meng 咪mi 眠mian 喵miao 民min 名ming 谬miu 摸mo 哞mou 毪mu 那na囡nan 囊nang 孬nao 哪ne哪nei 恁nen 能neng 妮ni拈nian 酿niang 鸟niao 捏nie 您nin 宁ning 妞niu 农nong 耨nou 奴nu暖nuan 挪nuo 女nv疟nve 区ou拍pai 潘pan 乓pang 抛pao 呸pei 喷pen 烹peng 丕pi片pian 票piao 氕pie 拚pin 乒ping 钋po剖pou 仆pu七qi掐qia 千qian 强qiang 悄qiao 切qie 钦qin銎qiong 丘qiu 区qu悛quan 炔que 囷qun 蚺ran 嚷rang 饶rao 若re人ren 扔reng 日ri戎rong 柔rou 如ru阮ruan 蕤rui 闰run 若ruo 撒sa腮sai 三san搔sao色se森sen僧seng 杀sha筛shai 山shan 伤shang 捎shao 奢she申shen 升sheng 尸shi收shou 书shu刷shua 衰shuai 闩shuan 双shuang 谁shui 吮shun 说shuo 司si叟sou 苏su 狻suan 尿sui 孙sun 莎suo 他ta 台tai 坍tan 汤tang 涛tao 忑te 疼teng 体ti 天tian 佻tiao 帖tie 厅ting 恫tong 偷tou 凸tu 湍tuan 忒tui托tuo 挖wa歪wai 弯wan 汪wang 危wei 温wen 翁weng 挝wo乌wu夕xi虾xia 仙xian 乡xiang 肖xiao 些xie 心xin 兴xing 凶xiong 休xiu 需xu轩xuan 削xue丫ya 咽yan 央yang 幺yao 耶ye 一yi 因yin 应ying 庸yong 优you 迂yu 鸢yuan 曰yue 晕yun 扎za 灾zai 簪zan 赃zang 遭zao 则ze 贼zei 怎zen 曾zeng沾zhan 张zhang 钊zhao 折zhe这zhei 贞zhen 争zheng 之zhi中zhong 州zhou 朱zhu抓zhua 拽zhuai 专zhuan 庄zhuang 隹zhui 屯zhun 拙zhuo 孖zi宗zong 邹zou苴zu尊zun作zuo4、在将以下内容分别粘进转译表的A1~C1单元格中:姓名(2~4汉字,无空格)简拼全拼5、将以下公式粘进转译表的B2单元格并回车,以获得得姓名的简拼,注意不要多复制:=IF(LEN(A2)=2,LOOKUP(LEFT(A2,1),资料!$A$1:$B$23)&LOOKUP(RIGHT(A2,1),资料!$A$1:$B$23),IF(LEN(A2)=3,LOOKUP(LEFT(A2,1),资料!$A$1:$B$23)&LOOKUP(MID(A2,2,1),资料!$A$1:$B$23)&LOOKUP(RIGHT(A2,1),资料!$A$1:$B$23),IF(LEN(A2)=4,LOOKUP(LEFT(A2,1),资料!$A$1:$B$23)&LOOKUP(MID(A2,2,1),资料!$A$1:$B$23)&LOOKUP(MID(A2,3,1),资料!$A$1:$B$23)&LOOKUP(RIGHT(A2,1),资料!$A$1:$B$23),"请查检查姓名")))6、将以下公式粘进转译表的C2单元格并回车,以获得姓名的全拼:=IF(LEN(A2)=2,PROPER(LOOKUP(LEFT(A2,1),资料!$D$1:$E$400))&PROPER(LOOKUP(RIGHT(A2,1),资料!$D$1:$E$400)),IF(LEN(A2)=3,PROPER(LOOKUP(LEFT(A2,1),资料!$D$1:$E$400))&PROPER(LOOKUP(MID(A2,2,1),资料!$D$1:$E$400)),IF(LEN(A2)=4,PROPER(LOOKUP(LEFT(A2,1),资料!$D$1:$E$400))&PROPER(LOOKUP(MID(A2,2,1),资料!$D$1:$E$400))&PROPER(LOOKUP(MID(A2,3,1),资料!$D$1:$E$400))&PROPER(LOOKUP(RIGHT(A2,1),资料!$D$1:$E$400)),"请查检查姓名")))7、现在可以在A2开始的A列中输入汉字姓名了,最后根据需要向下填充公式即可。