用公式将汉字转换为拼音的第一个字母

用公式将汉字转换为拼音的第一个字母
用公式将汉字转换为拼音的第一个字母

用公式将汉字转换为拼音的第一个字母

有时需要在Excel中将大量姓名或名称转换为拼音首字母的简写形式,例如将“周伯通”转换为“ZBT”。用定义名称和公式的方法可以轻松实现转换,在Windows XP中,以Excel 2003为例方法如下:

1.定义名称:

单击菜单“插入→名称→定义”,在弹出的对话框中“在当前工作簿中的名称”下的文本框中输入一个名称,如“py”,在“引用位置”下输入下列代码后确定:

={"","吖","八","嚓","咑","鵽","发","猤","铪","夻","咔","垃","嘸","旀",

"噢","妑","七","囕","仨","他","屲","夕","丫","帀";"","A","B","C","D","E",

"F","G","H","J","K","L","M","N","O","P","Q","R","S","T","W","X","Y"," Z"}

2.假如名单在A2:A100区域中,在B2单元格中输入公式:

=LOOKUP(LEFT(A2,1),py)&LOOKUP(MID(A2,2,1),py)&LOOKUP(MID(A2,3,1), py)&LOOKUP(MID(A2,4,1),py)

然后拖动填充柄向下填充公式即可。

说明:

1.定义的名称为一个数组,以分号为界分为两行,第一行为汉字,第二行为与第一行汉字对应的拼音第一个大写字母。如果是Windows 7或Vista,则需要将定义的名称改为:

={"","吖","八","攃","咑","鵽","发","旮","哈","丌","咔","垃","妈","乸",

"噢","帊","七","冄","仨","他","屲","夕","丫","帀";"","A","B","C","D","E",

"F","G","H","J","K","L","M","N","O","P","Q","R","S","T","W","X","Y"," Z"}

2.公式用LOOKUP函数将每个汉字转换成拼音的第一个大写字母。其原理是:Excel中汉字(文本)之间也可以进行比较;汉字在Excel中的排列顺序与拼音顺序相同,排在前面的“值”小于排在其后的。上述定义名称的数组中,每个汉字都是所有拼音首字母相同的汉字中的第一个,例如“八”在Excel中排在其他所有拼音首字母为“B”的前面,因而其“值”最小。因此,LOOKUP函数在查找某个不在数组中的汉字,如“伯”字时,会在数组的第一行中查找小于它的最大值“八”,然后返回最后一行同列的值“B”。

另外,由于在Windows XP与Windows 7、Vista中Excel对汉字的排列顺序有所不同,故定义的名称内容也不同。如果在Windows 7、Vista中使用XP中定义的数组,LOOKUP函数第二个参数中的值未按升序排列,可能无法返回正确的结果。

3.对于多音字只能返回一种结果。

4.如果有多于四个的汉字,继续在公式后面添加即可。如有第五个汉字,则加上“&LOOKUP(MID(A2,5,1),py)”。

宏-汉字转换拼音

公司要建DataBase,为了让老外们看明白,所以要吧中文店名全部转换成拼音。 5000多家,搞得头好晕,所以请教了下高手,发现了VBA的一个小技巧,分享给大家, 希望大家有用哦::P 具体方法如下: 打开Excel->Tools->Macro(宏)->Viaual Basic编辑器 点击插入->Module(模块) 然后会出现一个Module1,空白栏中粘贴以下内容: Option Explicit Option Compare Text Public Function HZQP(expression As String, Optional delimiter As String = " ", Optional limit As Integer = -1) As String 'expression ' 必需的?包含要转换的字符串? 'delimiter ' 可选的。用于标识分隔拼音的字符串字符。如果忽略,则使用空格字符(" ")作为分隔符。如果delimiter是一个长度为零的字符串,则返回仅包含一个元素,即完整的expression字符串。 'limit ' 可选的。要返回拼音字符数,–1表示返回所有的拼音字符数,1表示返回拼音首字母。 Dim STR As String, arrWord(400) As String Dim i As Integer, j As Integer arrWord(1) = "吖a" arrWord(2) = "哎ai" arrWord(3) = "腤an" arrWord(4) = "肮ang" arrWord(5) = "凹ao" arrWord(6) = "八ba" arrWord(7) = "挀bai" arrWord(8) = "扳ban" arrWord(9) = "邦bang" arrWord(10) = "勹bao" arrWord(11) = "陂bei" arrWord(12) = "奔ben"

获取汉字全拼以及首字母缩拼

获取汉字全拼以及首字母缩拼 using System; using System.Collections.Generic; using System.Text; using System.Text.RegularExpressions; namespace https://www.360docs.net/doc/631401821.html,mon.Tools { /// <summary> /// 汉字转拼音静态类,包括功能全拼和缩写,方法全部是静态的/// </summary> public static class Chinese2Spell { #region 属性数据定义 /// <summary> /// 汉字的机内码数组 /// </summary> private static int[] pyValue = new int[] {

-20319,-20317,-20304,-20295,-20292,-20283,-20265,-20257,-20242,-202 30,-20051,-20036, -20032,-20026,-20002,-19990,-19986,-19982,-19976,-19805,-19784,-197 75,-19774,-19763, -19756,-19751,-19746,-19741,-19739,-19728,-19725,-19715,-19540,-195 31,-19525,-19515, -19500,-19484,-19479,-19467,-19289,-19288,-19281,-19275,-19270,-192 63,-19261,-19249, -19243,-19242,-19238,-19235,-19227,-19224,-19218,-19212,-19038,-190 23,-19018,-19006, -19003,-18996,-18977,-18961,-18952,-18783,-18774,-18773,-18763,-187 56,-18741,-18735, -18731,-18722,-18710,-18697,-18696,-18526,-18518,-18501,-18490,-184 78,-18463,-18448, -18447,-18446,-18239,-18237,-18231,-18220,-18211,-18201,-18184,-181 83, -18181,-18012, -17997,-17988,-17970,-17964,-17961,-17950,-17947,-17931,-17928,-179 22,-17759,-17752, -17733,-17730,-17721,-17703,-17701,-17697,-17692,-17683,-17676,-174 96,-17487,-17482, -17468,-17454,-17433,-17427,-17417,-17202,-17185,-16983,-16970,-169 42,-16915,-16733,

在excel中把汉字转换成拼音只取首字母修订版

在e x c e l中把汉字转换成拼音只取首字母修订 版 IBMT standardization office【IBMT5AB-IBMT08-IBMT2C-ZZT18】

打开Excel->工具->宏->Viaual Basic编辑器 在弹出来的窗口中对着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"

汉字取拼音首字母程序vba

Option Explicit Public Sub dnxbz() Dim myrange As Range Dim i As Long, j As Long Dim temp As String Set myrange = Worksheets("Sheet1").Range("a1").CurrentRegion For i = 1 To myrange.Rows.Count '从1行开始到有数据的最后一行 temp = Cells(i, "A") '假设原数据在A列 For j = 1 To Len(temp) If Get_Pinyin(Mid(temp, j, 1)) <> "" Then Mid(temp, j, 1) = Get_Pinyin(Mid(temp, j, 1)) '如果速度慢再加个变量 Next Cells(i, "B") = temp '假设B列为输出数据 Next End Sub Public Function Get_Pinyin(ByVal Hanzi As String) As String Dim Ch As String Ch = Left(Hanzi, 1) Select Case Asc(Ch) Case -20319 To -20284 Get_Pinyin = "A" Case -20283 To -19776 Get_Pinyin = "B" Case -19775 To -19219 Get_Pinyin = "C" Case -19218 To -18711 Get_Pinyin = "D" Case -18710 To -18527 Get_Pinyin = "E" Case -18526 To -18240 Get_Pinyin = "F" Case -18239 To -17923 Get_Pinyin = "G" Case -17922 To -17418 Get_Pinyin = "H" Case -17417 To -16475 Get_Pinyin = "J" Case -16474 To -16217 Get_Pinyin = "K"

宏 拼音转汉字

Option Explicit Option Compare Text Public Function HZQP(expression As String, Optional delimiter As String = " ", Optional limit As Integer = -1) As String 'expression ' 必需的?包含要转换的字符串? 'delimiter ' 可选的。用于标识分隔拼音的字符串字符。如果忽略,则使用空格字符(" ")作为分隔符。如果delimiter是一个长度为零的字符串,则返回仅包含一个元素,即完整的 expression字符串。 'limit ' 可选的。要返回拼音字符数,–1表示返回所有的拼音字符数,1表示返回拼音首字母。 Dim STR As String, arrWord(400) As String Dim i As Integer, j As Integer arrWord(1) = "吖a" arrWord(2) = "哎ai" arrWord(3) = "腤an" arrWord(4) = "肮ang" arrWord(5) = "凹ao" arrWord(6) = "八ba" arrWord(7) = "挀bai" arrWord(8) = "扳ban" arrWord(9) = "邦bang" arrWord(10) = "勹bao" arrWord(11) = "陂bei" arrWord(12) = "奔ben" arrWord(13) = "崩beng" arrWord(14) = "皀bi" arrWord(15) = "边bian" arrWord(16) = "杓biao" arrWord(17) = "憋bie" arrWord(18) = "邠bin" arrWord(19) = "仌bing" arrWord(20) = "拨bo" arrWord(21) = "峬bu" arrWord(22) = "嚓ca" arrWord(23) = "猜cai" arrWord(24) = "飡can" arrWord(25) = "仓cang" arrWord(26) = "撡cao" arrWord(27) = "冊ce" arrWord(28) = "嵾cen" arrWord(29) = "噌ceng" arrWord(30) = "*cha"

excel:汉字拼音首字母提取

方法一:VBA自定义函数"=hztopy()" 下面是一个VBA自定义函数,工具->宏->Visual Basic编辑器->,插入模块,在VBA编辑器里面->插入->模块->贴入下述代码,(按ALT+F11,插入模块,在右面窗口中粘贴下面代码)那么,比如在A3中有"进退两难",则在B3中输入"=hztopy(A3)",则会得到"JTLN"。 不过此法有时候也会出错,比如"皓、鑫、婷、雯、奕"等,就无法提取汉字拼音首字母。 Function hztopy(hzpy As String) As String Dim hzstring As String, pystring As String Dim hzpysum As Integer, hzi As Integer, hzpyhex As Integer hzstring = Trim(hzpy) hzpysum = Len(Trim(hzstring)) pystring = "" For hzi = 1 To hzpysum hzpyhex = "&H" + Hex(Asc(Mid(hzstring, hzi, 1))) Select Case hzpyhex Case &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"

获取汉字的首字母

获取汉字的首字母 此文章从网上摘抄留着自己使用,现分享给大家。我在做一个搜索功能输入首字母显示对应的汉字信息。在后台录入数据时不能总是让客户把汉字的首字母给输进去。为了给客户以个好的体现,从后台自动获取汉字首字母存入数据中,当查询的时候方面使用。 public class chInitial { // 简体中文的编码范围从B0A1(45217)一直到F7FE(63486) private static int BEGIN = 45217; private static int END = 63486; // 按照声母表示,这个表是在GB2312中的出现的第一个汉字,也就是说“啊”是代表首字母a的第一个汉字。 // i, u, v都不做声母, 自定规则跟随前面的字母 private static char[] chartable = { '啊', '芭', '擦', '搭', '蛾', '发', '噶', '哈', '哈', '击', '喀', '垃', '妈', '拿', '哦', '啪', '期', '然', '撒', '塌', '塌', '塌', '挖', '昔', '压', '匝', }; // 二十六个字母区间对应二十七个端点 // GB2312码汉字区间十进制表示 private static int[] table = new int[27]; // 对应首字母区间表 private static char[] initialtable = { 'a', 'b', 'c', 'd', 'e', 'f', 'g',

'h', 'h', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 't', 't', 'w', 'x', 'y', 'z', }; // 初始化 static { for (int i = 0; i < 26; i++) { table[i] = gbValue(chartable[i]);// 得到GB2312码的首字母区间端点表,十进制。 } table[26] = END;// 区间表结尾 } // ------------------------public方法区------------------------ /** *根据一个包含汉字的字符串返回一个汉字拼音首字母的字符串最重要的一个方法,思路如下:一个个字符读入、判断、输出 */ public static String cn2py(String SourceStr) { String Result = ""; int StrLength = SourceStr.length(); int i; try { for (i = 0; i < StrLength; i++) {

excel汉字转换成拼音简拼(只取首字母)

打开Excel->工具->宏->Viaual Basic编辑器 在弹出来的窗口中对着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"

Excel中将汉字转化为拼音

Excel中将汉字转化为拼音(完整拼音)版 1.打开Excel->工具->宏->Viaual Basic编辑器 2.在弹出来的窗口中对着VBAproject点右键->插入->模块 3.下面会出现一个名为"模块1",点击 4.在右边的空白栏中粘贴以下内容: Function pinyin(p As String) As String i = Asc(p) Select Case i Case -20319 To -20318: pinyin = "a " Case -20317 To -20305: pinyin = "ai " Case -20304 To -20296: pinyin = "an " Case -20295 To -20293: pinyin = "ang " Case -20292 To -20284: pinyin = "ao " Case -20283 To -20266: pinyin = "ba " Case -20265 To -20258: pinyin = "bai " Case -20257 To -20243: pinyin = "ban " Case -20242 To -20231: pinyin = "bang " Case -20230 To -20052: pinyin = "bao " Case -20051 To -20037: pinyin = "bei " Case -20036 To -20033: pinyin = "ben " Case -20032 To -20027: pinyin = "beng " Case -20026 To -20003: pinyin = "bi " Case -20002 To -19991: pinyin = "bian " Case -19990 To -19987: pinyin = "biao " Case -19986 To -19983: pinyin = "bie " Case -19982 To -19977: pinyin = "bin " Case -19976 To -19806: pinyin = "bing " Case -19805 To -19785: pinyin = "bo " Case -19784 To -19776: pinyin = "bu " Case -19775 To -19775: pinyin = "ca " Case -19774 To -19764: pinyin = "cai " Case -19763 To -19757: pinyin = "can " Case -19756 To -19752: pinyin = "cang " Case -19751 To -19747: pinyin = "cao " Case -19746 To -19742: pinyin = "ce " Case -19741 To -19740: pinyin = "ceng " Case -19739 To -19729: pinyin = "cha " Case -19728 To -19726: pinyin = "chai " Case -19725 To -19716: pinyin = "chan " Case -19715 To -19541: pinyin = "chang " Case -19540 To -19532: pinyin = "chao " Case -19531 To -19526: pinyin = "che "

汉字与首字母相互转换:输入汉字拼音首字母,自动识别汉字; 输入汉字,自动获取首字母;

///

/// 找到中文短语的拼音首字母。 /// /// 中文短语 /// 拼音首字母,存在多音字时以,分隔。 /// 如:西单,将返回XD,XS,XC。 public static void GetFirstLetter(string wStrChs, ref string strResult) { strResult = ""; string strBuffer = ""; for (int i = 0; i < wStrChs.Length; i++) { GetSpellByChs(wStrChs[i], ref strBuffer); if (strBuffer.Length > 0) { if (strResult != string.Empty) { string[] strs = strResult.Split(','); strResult = ""; for (int j = 0; j < strs.Length; j++) { for (int k = 0; k < strBuffer.Length; k++) { strResult += strs[j] + strBuffer[k].ToString() + ","; } } } else { for (int j = 0; j < strBuffer.Length; j++) { strResult += strBuffer[j] + ","; } } if (strResult != string.Empty) strResult = strResult.Substring(0, strResult.Length - 1); } } } /// /// 返回中文单字的拼音首字母。

excel 汉字转换成拼音全拼&excel 汉字转换成拼音简拼(只取首字母)

Excel自定义函数方法: 1.启动Excel 2003(其它版本请仿照操作),打开相应的工作表; 2.执行“工具→宏→Visual Basic编辑器”命令(或者直接按“Alt+F11”组合键),进入Visual Basic编辑状态; 3.执行“插入→模块”命令,插入一个新模块。再双击插入的模块,进入模块代码编辑状态; 4.将代码输入其中; 5.代码输入完成后,关闭Visual Basic编辑窗口,返回Excel编辑状态; 6.自定义函数就可以用了,如:选中D2单元格,输入公式:=getpy(A2)。 有极个别的汉字不能转换,手动就可以了!很方便了。 Function pinyin(p As String) As String i = Asc(p) Select Case i Case -20319 To -20318: pinyin = "a " Case -20317 To -20305: pinyin = "ai " Case -20304 To -20296: pinyin = "an " Case -20295 To -20293: pinyin = "ang " Case -20292 To -20284: pinyin = "ao " Case -20283 To -20266: pinyin = "ba " Case -20265 To -20258: pinyin = "bai " Case -20257 To -20243: pinyin = "ban " Case -20242 To -20231: pinyin = "bang " Case -20230 To -20052: pinyin = "bao " Case -20051 To -20037: pinyin = "bei " Case -20036 To -20033: pinyin = "ben " Case -20032 To -20027: pinyin = "beng " Case -20026 To -20003: pinyin = "bi " Case -20002 To -19991: pinyin = "bian " Case -19990 To -19987: pinyin = "biao " Case -19986 To -19983: pinyin = "bie " Case -19982 To -19977: pinyin = "bin " Case -19976 To -19806: pinyin = "bing " Case -19805 To -19785: pinyin = "bo " Case -19784 To -19776: pinyin = "bu " Case -19775 To -19775: pinyin = "ca " Case -19774 To -19764: pinyin = "cai " Case -19763 To -19757: pinyin = "can " Case -19756 To -19752: pinyin = "cang " Case -19751 To -19747: pinyin = "cao " Case -19746 To -19742: pinyin = "ce " Case -19741 To -19740: pinyin = "ceng " Case -19739 To -19729: pinyin = "cha " Case -19728 To -19726: pinyin = "chai "

excel提取汉字的拼音首字母集锦

方法二:VBA自定义函数"=hztopy()" 下面是一个VBA自定义函数,工具->宏->Visual Basic编辑器->,插入模块,在VBA编辑器里面->插入->模块->贴入下述代码,那么,比如在A3中有"进退两难",则在B3中输入"=hztopy(A3)",则会得到"JTLN"。 不过此法有时候也会出错,比如"皓、鑫、婷、雯、奕"等,就无法提取汉字拼音首字母。" Function hztopy(hzpy As String) As String Dim hzstring As String, pystring As String Dim hzpysum As Integer, hzi As Integer, hzpyhex As Integer hzstring = Trim(hzpy) hzpysum = Len(Trim(hzstring)) pystring = "" For hzi = 1 To hzpysum hzpyhex = "&H" + Hex(Asc(Mid(hzstring, hzi, 1))) Select Case hzpyhex Case &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 Else pystring = pystring + Mid(hzstring, hzi, 1)

Java中文字转拼音工具类

Java中文字转拼音工具类 2020-03-24 09:49:09 有时,我们需要将中文汉字转为拼音存储,例如用于检索时,直接输入拼音或者首字母也能检索出我们想要的结果,这时我们便需要将汉字转拼音 ?1、首先我们在 pom.xml 文件中引入需要的 maven 依赖 com.belerweb pinyin4j 2.5.1 ?2、汉字转拼音工具类代码如下 Pinyin4jUtil.java: import net.sourceforge.pinyin4j.PinyinHelper; import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType; import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat; import net.sourceforge.pinyin4j.format.HanyuPinyinToneType; import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatComb ination; /** –中文转化为拼音工具类 –@author lizhou –*/ public class Pinyin4jUtil { /** ?获得汉语拼音首字母大写 ?@param chines 汉字 ?@return */ public static String getAlpha2UpperCase(String chines) { String pinyinNam e = "“; char[] nameChar = chines.toCharArray(); HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat(); defaultFormat.setCaseType(HanyuPinyinCaseType.UPPERCASE); defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_T ONE); for (int i = 0; i < nameChar.length; i++) { if (nameChar[i] > 128) { try { pinyinName += PinyinHelper.toHanyuPinyinStringArray(nameChar[i], defaultFormat)[0].charAt(0); } catch (BadHanyuPinyinOutputFormatCombination e) { System.out.println(”获得汉语拼音首字母异常:}" + e.getMessage()); } } else { pinyinName += nameChar[i]; } } return pinyinName; } /**

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

Excel自定义函数法: 1.启动Excel 2003(其它版本请仿照操作),打开相应的工作表; 2.执行“工具→宏→Visual Basic编辑器”命令(或者直接按“Alt+F11”组合键),进入Visual Basic编辑状态; 3.执行“插入→模块”命令,插入一个新模块。再双击插入的模块,进入模块代码编辑状态; 4.将代码输入其中; 5.代码输入完成后,关闭Visual Basic编辑窗口,返回Excel编辑状态; 6.自定义函数就可以用了,如:选中D2单元格,输入公式:=getpy(A2)。 有极个别的汉字不能转换,手动就可以了!很便了。 Function pinyin(p As String) As String i = Asc(p) Select Case i Case -20319 To -20318: pinyin = "a " Case -20317 To -20305: pinyin = "ai " Case -20304 To -20296: pinyin = "an " Case -20295 To -20293: pinyin = "ang " Case -20292 To -20284: pinyin = "ao " Case -20283 To -20266: pinyin = "ba " Case -20265 To -20258: pinyin = "bai " Case -20257 To -20243: pinyin = "ban " Case -20242 To -20231: pinyin = "bang " Case -20230 To -20052: pinyin = "bao " Case -20051 To -20037: pinyin = "bei " Case -20036 To -20033: pinyin = "ben " Case -20032 To -20027: pinyin = "beng " Case -20026 To -20003: pinyin = "bi " Case -20002 To -19991: pinyin = "bian " Case -19990 To -19987: pinyin = "biao " Case -19986 To -19983: pinyin = "bie " Case -19982 To -19977: pinyin = "bin " Case -19976 To -19806: pinyin = "bing " Case -19805 To -19785: pinyin = "bo " Case -19784 To -19776: pinyin = "bu " Case -19775 To -19775: pinyin = "ca " Case -19774 To -19764: pinyin = "cai " Case -19763 To -19757: pinyin = "can " Case -19756 To -19752: pinyin = "cang " Case -19751 To -19747: pinyin = "cao " Case -19746 To -19742: pinyin = "ce " Case -19741 To -19740: pinyin = "ceng " Case -19739 To -19729: pinyin = "cha " Case -19728 To -19726: pinyin = "chai "

excel提取汉字的拼音首字母集锦

excel提取汉字的拼音首字母集锦 方法一:(最完美的方法) 如果你A列的汉字都在4个字符之内,那就在B列输入此公式: =LOOKUP(MID(A1,1,1),{"","";"吖","A";"八","B";"嚓","C";"咑","D";"鵽","E";"发","F";"猤","G";"铪","H";"夻","J";"咔","K";"垃","L";"嘸","M";"旀","N";"噢","O";"妑","P";"七","Q";"囕","R";"仨","S";"他","T";"屲","W";"夕","X";"丫","Y";"帀","Z"})&LOOKUP(MID(A1,2,1),{"","";"吖","A";"八","B";"嚓","C";"咑","D";"鵽","E";"发","F";"猤","G";"铪","H";"夻","J";"咔","K";"垃","L";"嘸","M";"旀","N";"噢","O";"妑","P";"七","Q";"囕","R";"仨","S";"他","T";"屲","W";"夕","X";"丫","Y";"帀","Z"})&LOOKUP(MID(A1,3,1),{"","";"吖","A";"八","B";"嚓","C";"咑","D";"鵽","E";"发","F";"猤","G";"铪","H";"夻","J";"咔","K";"垃","L";"嘸","M";"旀","N";"噢","O";"妑","P";"七","Q";"囕","R";"仨","S";"他","T";"屲","W";"夕","X";"丫","Y";"帀","Z"})&LOOKUP(MID(A1,4,1),{"","";"吖","A";"八","B";"嚓","C";"咑","D";"鵽","E";"发","F";"猤","G";"铪","H";"夻","J";"咔","K";"垃","L";"嘸","M";"旀","N";"噢","O";"妑","P";"七","Q";"囕","R";"仨","S";"他","T";"屲","W";"夕","X";"丫","Y";"帀","Z"}) 公式是长了一点,如果把{}里的数据定义为名称,可以转换更多的首字母 具体方法: 复制{}里的数据,插入-名称(或者按CTRL+F3),定义名称,如图,定义“拼音”为名称,下面的“引用位置”的“=”号后面粘贴刚才复制的{}里的数据

相关文档
最新文档