参考文献:

1.首字母大写:http://www.excelpx.com/thread-168029-1-1.html(里面下载一个excel,里面有宏)

中文转拼音:

2.http://blog.sina.com.cn/s/blog_4bca87330100n8c3.html(之前用过可行)

3.http://www.gaohaipeng.com/1706.html(这个博主说上面的不能完美转换,找了另外的)

操作过程

参考文献1中的函数

普通输出:=chinese2spell(A2,1) //参数为1

首字母大写:=chinese2spell(A2,0) //参数为0

去除空格:=SUBSTITUTE(chinese2spell(A2,0)," ","")

 Public Function Chinese2Spell(sChinese As String, Optional iflag As Integer = ) As String
Dim C2S As String
Set d = CreateObject("Scripting.Dictionary")
d.Add "a", -
d.Add "ai", -
d.Add "an", -
d.Add "ang", -
d.Add "ao", -
d.Add "ba", -
d.Add "bai", -
d.Add "ban", -
d.Add "bang", -
d.Add "bao", -
d.Add "bei", -
d.Add "ben", -
d.Add "beng", -
d.Add "bi", -
d.Add "bian", -
d.Add "biao", -
d.Add "bie", -
d.Add "bin", -
d.Add "bing", -
d.Add "bo", -
d.Add "bu", -
d.Add "ca", -
d.Add "cai", -
d.Add "can", -
d.Add "cang", -
d.Add "cao", -
d.Add "ce", -
d.Add "ceng", -
d.Add "cha", -
d.Add "chai", -
d.Add "chan", -
d.Add "chang", -
d.Add "chao", -
d.Add "che", -
d.Add "chen", -
d.Add "cheng", -
d.Add "chi", -
d.Add "chong", -
d.Add "chou", -
d.Add "chu", -
d.Add "chuai", -
d.Add "chuan", -
d.Add "chuang", -
d.Add "chui", -
d.Add "chun", -
d.Add "chuo", -
d.Add "ci", -
d.Add "cong", -
d.Add "cou", -
d.Add "cu", -
d.Add "cuan", -
d.Add "cui", -
d.Add "cun", -
d.Add "cuo", -
d.Add "da", -
d.Add "dai", -
d.Add "dan", -
d.Add "dang", -
d.Add "dao", -
d.Add "de", -
d.Add "deng", -
d.Add "di", -
d.Add "dian", -
d.Add "diao", -
d.Add "die", -
d.Add "ding", -
d.Add "diu", -
d.Add "dong", -
d.Add "dou", -
d.Add "du", -
d.Add "duan", -
d.Add "dui", -
d.Add "dun", -
d.Add "duo", -
d.Add "e", -
d.Add "en", -
d.Add "er", -
d.Add "fa", -
d.Add "fan", -
d.Add "fang", -
d.Add "fei", -
d.Add "fen", -
d.Add "feng", -
d.Add "fo", -
d.Add "fou", -
d.Add "fu", -
d.Add "ga", -
d.Add "gai", -
d.Add "gan", -
d.Add "gang", -
d.Add "gao", -
d.Add "ge", -
d.Add "gei", -
d.Add "gen", -
d.Add "geng", -
d.Add "gong", -
d.Add "gou", -
d.Add "gu", -
d.Add "gua", -
d.Add "guai", -
d.Add "guan", -
d.Add "guang", -
d.Add "gui", -
d.Add "gun", -
d.Add "guo", -
d.Add "ha", -
d.Add "hai", -
d.Add "han", -
d.Add "hang", -
d.Add "hao", -
d.Add "he", -
d.Add "hei", -
d.Add "hen", -
d.Add "heng", -
d.Add "hong", -
d.Add "hou", -
d.Add "hu", -
d.Add "hua", -
d.Add "huai", -
d.Add "huan", -
d.Add "huang", -
d.Add "hui", -
d.Add "hun", -
d.Add "huo", -
d.Add "ji", -
d.Add "jia", -
d.Add "jian", -
d.Add "jiang", -
d.Add "jiao", -
d.Add "jie", -
d.Add "jin", -
d.Add "jing", -
d.Add "jiong", -
d.Add "jiu", -
d.Add "ju", -
d.Add "juan", -
d.Add "jue", -
d.Add "jun", -
d.Add "ka", -
d.Add "kai", -
d.Add "kan", -
d.Add "kang", -
d.Add "kao", -
d.Add "ke", -
d.Add "ken", -
d.Add "keng", -
d.Add "kong", -
d.Add "kou", -
d.Add "ku", -
d.Add "kua", -
d.Add "kuai", -
d.Add "kuan", -
d.Add "kuang", -
d.Add "kui", -
d.Add "kun", -
d.Add "kuo", -
d.Add "la", -
d.Add "lai", -
d.Add "lan", -
d.Add "lang", -
d.Add "lao", -
d.Add "le", -
d.Add "lei", -
d.Add "leng", -
d.Add "li", -
d.Add "lia", -
d.Add "lian", -
d.Add "liang", -
d.Add "liao", -
d.Add "lie", -
d.Add "lin", -
d.Add "ling", -
d.Add "liu", -
d.Add "long", -
d.Add "lou", -
d.Add "lu", -
d.Add "lv", -
d.Add "luan", -
d.Add "lue", -
d.Add "lun", -
d.Add "luo", -
d.Add "ma", -
d.Add "mai", -
d.Add "man", -
d.Add "mang", -
d.Add "mao", -
d.Add "me", -
d.Add "mei", -
d.Add "men", -
d.Add "meng", -
d.Add "mi", -
d.Add "mian", -
d.Add "miao", -
d.Add "mie", -
d.Add "min", -
d.Add "ming", -
d.Add "miu", -
d.Add "mo", -
d.Add "mou", -
d.Add "mu", -
d.Add "na", -
d.Add "nai", -
d.Add "nan", -
d.Add "nang", -
d.Add "nao", -
d.Add "ne", -
d.Add "nei", -
d.Add "nen", -
d.Add "neng", -
d.Add "ni", -
d.Add "nian", -
d.Add "niang", -
d.Add "niao", -
d.Add "nie", -
d.Add "nin", -
d.Add "ning", -
d.Add "niu", -
d.Add "nong", -
d.Add "nu", -
d.Add "nv", -
d.Add "nuan", -
d.Add "nue", -
d.Add "nuo", -
d.Add "o", -
d.Add "ou", -
d.Add "pa", -
d.Add "pai", -
d.Add "pan", -
d.Add "pang", -
d.Add "pao", -
d.Add "pei", -
d.Add "pen", -
d.Add "peng", -
d.Add "pi", -
d.Add "pian", -
d.Add "piao", -
d.Add "pie", -
d.Add "pin", -
d.Add "ping", -
d.Add "po", -
d.Add "pu", -
d.Add "qi", -
d.Add "qia", -
d.Add "qian", -
d.Add "qiang", -
d.Add "qiao", -
d.Add "qie", -
d.Add "qin", -
d.Add "qing", -
d.Add "qiong", -
d.Add "qiu", -
d.Add "qu", -
d.Add "quan", -
d.Add "que", -
d.Add "qun", -
d.Add "ran", -
d.Add "rang", -
d.Add "rao", -
d.Add "re", -
d.Add "ren", -
d.Add "reng", -
d.Add "ri", -
d.Add "rong", -
d.Add "rou", -
d.Add "ru", -
d.Add "ruan", -
d.Add "rui", -
d.Add "run", -
d.Add "ruo", -
d.Add "sa", -
d.Add "sai", -
d.Add "san", -
d.Add "sang", -
d.Add "sao", -
d.Add "se", -
d.Add "sen", -
d.Add "seng", -
d.Add "sha", -
d.Add "shai", -
d.Add "shan", -
d.Add "shang", -
d.Add "shao", -
d.Add "she", -
d.Add "shen", -
d.Add "sheng", -
d.Add "shi", -
d.Add "shou", -
d.Add "shu", -
d.Add "shua", -
d.Add "shuai", -
d.Add "shuan", -
d.Add "shuang", -
d.Add "shui", -
d.Add "shun", -
d.Add "shuo", -
d.Add "si", -
d.Add "song", -
d.Add "sou", -
d.Add "su", -
d.Add "suan", -
d.Add "sui", -
d.Add "sun", -
d.Add "suo", -
d.Add "ta", -
d.Add "tai", -
d.Add "tan", -
d.Add "tang", -
d.Add "tao", -
d.Add "te", -
d.Add "teng", -
d.Add "ti", -
d.Add "tian", -
d.Add "tiao", -
d.Add "tie", -
d.Add "ting", -
d.Add "tong", -
d.Add "tou", -
d.Add "tu", -
d.Add "tuan", -
d.Add "tui", -
d.Add "tun", -
d.Add "tuo", -
d.Add "wa", -
d.Add "wai", -
d.Add "wan", -
d.Add "wang", -
d.Add "wei", -
d.Add "wen", -
d.Add "weng", -
d.Add "wo", -
d.Add "wu", -
d.Add "xi", -
d.Add "xia", -
d.Add "xian", -
d.Add "xiang", -
d.Add "xiao", -
d.Add "xie", -
d.Add "xin", -
d.Add "xing", -
d.Add "xiong", -
d.Add "xiu", -
d.Add "xu", -
d.Add "xuan", -
d.Add "xue", -
d.Add "xun", -
d.Add "ya", -
d.Add "yan", -
d.Add "yang", -
d.Add "yao", -
d.Add "ye", -
d.Add "yi", -
d.Add "yin", -
d.Add "ying", -
d.Add "yo", -
d.Add "yong", -
d.Add "you", -
d.Add "yu", -
d.Add "yuan", -
d.Add "yue", -
d.Add "yun", -
d.Add "za", -
d.Add "zai", -
d.Add "zan", -
d.Add "zang", -
d.Add "zao", -
d.Add "ze", -
d.Add "zei", -
d.Add "zen", -
d.Add "zeng", -
d.Add "zha", -
d.Add "zhai", -
d.Add "zhan", -
d.Add "zhang", -
d.Add "zhao", -
d.Add "zhe", -
d.Add "zhen", -
d.Add "zheng", -
d.Add "zhi", -
d.Add "zhong", -
d.Add "zhou", -
d.Add "zhu", -
d.Add "zhua", -
d.Add "zhuai", -
d.Add "zhuan", -
d.Add "zhuang", -
d.Add "zhui", -
d.Add "zhun", -
d.Add "zhuo", -
d.Add "zi", -
d.Add "zong", -
d.Add "zou", -
d.Add "zu", -
d.Add "zuan", -
d.Add "zui", -
d.Add "zun", -
d.Add "zuo", -
num = Asc(sChinese)
a = d.Items
b = d.keys
Application.Volatile
For l = To Len(sChinese)
num = Asc(Mid(sChinese, l, ))
For i = d.Count - To Step -
If a(i) <= num Then Exit For
Next
Select Case iflag
Case '返回拼音(首字大写)
C2S = C2S & Application.WorksheetFunction.Proper(b(i))
Case '返回小写拼音
C2S = C2S & b(i)
Case '返回大写拼音
C2S = C2S & UCase$(b(i))
Case '返回小写拼音首字
C2S = C2S & Left$(b(i), )
Case '返回大写拼音首字
C2S = C2S & UCase$(Left$(b(i), ))
End Select
If Len(sChinese) > And iflag < Then C2S = C2S & " "
Next
Chinese2Spell = C2S
Set d = Nothing
End Function

参考文献2中的函数

用法:=UPPER(SUBSTITUTE(PinYin(B3)," ","")),全部大写,去掉空格

 Function PinYin(Hz As String)
Dim PinMa As String
Dim MyPinMa As Variant
Dim Temp As Integer, i As Integer, j As Integer
PinMa = "a,20319,ai,20317,an,20304,ang,20295,ao,20292,"
PinMa = PinMa & "ba,20283,bai,20265,ban,20257,bang,20242,bao,20230,bei,20051,ben,20036,beng,20032,bi,20026,bian,20002,biao,19990,bie,19986,bin,19982,bing,19976,bo,19805,bu,19784,"
PinMa = PinMa & "ca,19775,cai,19774,can,19763,cang,19756,cao,19751,ce,19746,ceng,19741,cha,19739,chai,19728,chan,19725,chang,19715,chao,19540,che,19531,chen,19525,cheng,19515,chi,19500,chong,19484,chou,19479,chu,19467,chuai,19289,chuan,19288,chuang,19281,chui,19275,chun,19270,chuo,19263,ci,19261,cong,19249,cou,19243,cu,19242,cuan,19238,cui,19235,cun,19227,cuo,19224,"
PinMa = PinMa & "da,19218,dai,19212,dan,19038,dang,19023,dao,19018,de,19006,deng,19003,di,18996,dian,18977,diao,18961,die,18952,ding,18783,diu,18774,dong,18773,dou,18763,du,18756,duan,18741,dui,18735,dun,18731,duo,18722,"
PinMa = PinMa & "e,18710,en,18697,er,18696,"
PinMa = PinMa & "fa,18526,fan,18518,fang,18501,fei,18490,fen,18478,feng,18463,fo,18448,fou,18447,fu,18446,"
PinMa = PinMa & "ga,18239,gai,18237,gan,18231,gang,18220,gao,18211,ge,18201,gei,18184,gen,18183,geng,18181,gong,18012,gou,17997,gu,17988,gua,17970,guai,17964,guan,17961,guang,17950,gui,17947,gun,17931,guo,17928,"
PinMa = PinMa & "ha,17922,hai,17759,han,17752,hang,17733,hao,17730,he,17721,hei,17703,hen,17701,heng,17697,hong,17692,hou,17683,hu,17676,hua,17496,huai,17487,huan,17482,huang,17468,hui,17454,hun,17433,huo,17427,"
PinMa = PinMa & "ji,17417,jia,17202,jian,17185,jiang,16983,jiao,16970,jie,16942,jin,16915,jing,16733,jiong,16708,jiu,16706,ju,16689,juan,16664,jue,16657,jun,16647,"
PinMa = PinMa & "ka,16474,kai,16470,kan,16465,kang,16459,kao,16452,ke,16448,ken,16433,keng,16429,kong,16427,kou,16423,ku,16419,kua,16412,kuai,16407,kuan,16403,kuang,16401,kui,16393,kun,16220,kuo,16216,"
PinMa = PinMa & "la,16212,lai,16205,lan,16202,lang,16187,lao,16180,le,16171,lei,16169,leng,16158,li,16155,lia,15959,lian,15958,liang,15944,liao,15933,lie,15920,lin,15915,ling,15903,liu,15889,long,15878,lou,15707,lu,15701,lv,15681,luan,15667,lue,15661,lun,15659,luo,15652,"
PinMa = PinMa & "ma,15640,mai,15631,man,15625,mang,15454,mao,15448,me,15436,mei,15435,men,15419,meng,15416,mi,15408,mian,15394,miao,15385,mie,15377,min,15375,ming,15369,miu,15363,mo,15362,mou,15183,mu,15180,"
PinMa = PinMa & "na,15165,nai,15158,nan,15153,nang,15150,nao,15149,ne,15144,nei,15143,nen,15141,neng,15140,ni,15139,nian,15128,niang,15121,niao,15119,nie,15117,nin,15110,ning,15109,niu,14941,nong,14937,nu,14933,nv,14930,nuan,14929,nue,14928,nuo,14926,"
PinMa = PinMa & "o,14922,ou,14921,"
PinMa = PinMa & "pa,14914,pai,14908,pan,14902,pang,14894,pao,14889,pei,14882,pen,14873,peng,14871,pi,14857,pian,14678,piao,14674,pie,14670,pin,14668,ping,14663,po,14654,pu,14645,"
PinMa = PinMa & "qi,14630,qia,14594,qian,14429,qiang,14407,qiao,14399,qie,14384,qin,14379,qing,14368,qiong,14355,qiu,14353,qu,14345,quan,14170,que,14159,qun,14151,"
PinMa = PinMa & "ran,14149,rang,14145,rao,14140,re,14137,ren,14135,reng,14125,ri,14123,rong,14122,rou,14112,ru,14109,ruan,14099,rui,14097,run,14094,ruo,14092,"
PinMa = PinMa & "sa,14090,sai,14087,san,14083,sang,13917,sao,13914,se,13910,sen,13907,seng,13906,sha,13905,shai,13896,shan,13894,shang,13878,shao,13870,she,13859,shen,13847,sheng,13831,shi,13658,shou,13611,shu,13601,shua,13406,shuai,13404,shuan,13400,shuang,13398,shui,13395,shun,13391,shuo,13387,si,13383,song,13367,sou,13359,su,13356,suan,13343,sui,13340,sun,13329,suo,13326,"
PinMa = PinMa & "ta,13318,tai,13147,tan,13138,tang,13120,tao,13107,te,13096,teng,13095,ti,13091,tian,13076,tiao,13068,tie,13063,ting,13060,tong,12888,tou,12875,tu,12871,tuan,12860,tui,12858,tun,12852,tuo,12849,"
PinMa = PinMa & "wa,12838,wai,12831,wan,12829,wang,12812,wei,12802,wen,12607,weng,12597,wo,12594,wu,12585,"
PinMa = PinMa & "xi,12556,xia,12359,xian,12346,xiang,12320,xiao,12300,xie,12120,xin,12099,xing,12089,xiong,12074,xiu,12067,xu,12058,xuan,12039,xue,11867,xun,11861,"
PinMa = PinMa & "ya,11847,yan,11831,yang,11798,yao,11781,ye,11604,yi,11589,yin,11536,ying,11358,yo,11340,yong,11339,you,11324,yu,11303,yuan,11097,yue,11077,yun,11067,"
PinMa = PinMa & "za,11055,zai,11052,zan,11045,zang,11041,zao,11038,ze,11024,zei,11020,zen,11019,zeng,11018,zha,11014,zhai,10838,zhan,10832,zhang,10815,zhao,10800,zhe,10790,zhen,10780,zheng,10764,zhi,10587,zhong,10544,zhou,10533,zhu,10519,zhua,10331,zhuai,10329,zhuan,10328,zhuang,10322,zhui,10315,zhun,10309,zhuo,10307,zi,10296,zong,10281,zou,10274,zu,10270,zuan,10262,zui,10260,zun,10256,zuo,10254"
MyPinMa = Split(PinMa, ",") For i = To Len(Hz)
Temp = Asc(Mid(Hz, i, ))
If Temp < Then
Temp = Abs(Temp)
For j = To Step -
If Temp <= Val(MyPinMa(j)) Then
PinYin = PinYin & MyPinMa(j - ) & " "
Exit For
End If
Next
End If
Next
PinYin = Trim(PinYin)
End Function

excel中文转成拼音字母(包括首字母大写)的更多相关文章

  1. javabean转成json字符首字母大写

    今天写接口的时候有个需求将接口返回的json字符串首字母大写:{"SN":"","Result":""}格式, 只需要在 ...

  2. fastjson将bean转成字符串时首字母变小写问题

    一个项目需求要求返回值为JSON格式,且大多数字段是首字母大写,还有些是类似N_TX这样的格式,在输出这样的结果时遇到了问题,由于时间紧,就直接拷贝需要的结果字段建立JavaBean类,本以为最后直接 ...

  3. 【Python实践-6】将不规范的英文名字,变为首字母大写,其他小写的规范名字

    #利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字. def f1(s): s=s.capitalize() return s list1= ['adam', 'L ...

  4. Css中如何使英文和拼音变成全大写、全小写和首字母大写?

    想要实现英文和中文拼音变成全大写.全小写和首个字母大写,需要用到 css中text-transform样式属性,接下来介绍一下 1.text-transform的值 1)Capitalize:英文拼音 ...

  5. 小tips:JS/CSS实现字符串单词首字母大写

    css实现: text-transform:capitalize; JS代码一: String.prototype.firstUpperCase = function(){ return this.r ...

  6. java string,需要进行首字母大写改写

    java string,需要进行首字母大写改写,网上大家的思路基本一致,就是将首字母截取,转化成大写然后再串上后面的,类似如下代码 //首字母大写     public static String c ...

  7. Microsoft office word关闭英文输入首字母大写设置

    1.概述: 在使用office word的时,经常出现输入一段不需首字母大写的英文时,通常敲击完回车时word会自动将首字母大写,需要重新将首字母修改成小写,这样操作很不方便.于是需要对这个功能进行一 ...

  8. Python - 首字母大写(capwords) 和 创建转换表(maketrans) 具体解释

    首字母大写(capwords) 和 创建转换表(maketrans) 具体解释 本文地址: http://blog.csdn.net/caroline_wendy/article/details/27 ...

  9. JS中将字符串中每个单词的首字母大写化

    今天看到一个帖子,处理js中字符串每个单词的首字母大写. 原贴地址:关于字符串中每个单词的首字母大写化问题 受到启发,自己跟着改写了几个版本如下,请大家指正. 1.for循环: var a = 'Hi ...

随机推荐

  1. HDU 1869 六度分离 最短路

    解题报告: 1967年,美国著名的社会学家斯坦利·米尔格兰姆提出了一个名为“小世界现象(small world phenomenon)”的著名假说,大意是说,任何2个素不相识的人中间最多只隔着6个人, ...

  2. 第10月第1天 storyboard uitableviewcell

    1. 如图,我们在Cell的属性界面对其进行了注册,identifier 为"TableViewCell" 不需要在 ViewDidLoad 对其进行注册了,如果进行注册的话,则对 ...

  3. Zookeeper笔记之命令行操作

    $ZOOKEEPER_HOME/bin下的zkCli.sh进入命令行界面,使用help可查看支持的所有命令: 一.节点相关操作 create [-s] [-e] path data acl creat ...

  4. Javascript - 表达式与语句

    表达式与语句(Expression&Statement) 流程控制语句 1.嵌入式语句 嵌入式即这种语句可以无限嵌套N层.所有嵌入式语句只需要键入首个关键单词,在visual studio里按 ...

  5. 【干货】已Window7 系统为例,谈谈boot引导程序-------附带看看数据隐藏

    来源:Unit 3: Unix/Linux File System 3.1 Unix/Linux File System Booting Process 使用工具:EnCase Forensic 学习 ...

  6. 从xtrabackup备份恢复单表【转】

    目前对MySQL比较流行的备份方式有两种,一种上是使用自带的mysqldump,另一种是xtrabackup,对于数据时大的环境,普遍使用了xtrabackup+binlog进行全量或者增量备份,那么 ...

  7. 解决windows10 里vs2017 直接开始执行提示“此任务要求应用程序有提升的权限”1.

    1.打开vs的安装路径,我的是 C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\ ,找到  VSLauncher.exe 右击该文 ...

  8. JVM(3)对象A和B循环引用,最后会不会不被GC回收?-------关于Java的GC机制

    ①首先说一下,GC里边在JVM其中是使用的ROOT算法,ROOT算法,什么称作为ROOT呢,就是说类的静态成员,静态成员就是static修饰的那种,是"根"的一个,根还包含方法中的 ...

  9. 输入操作遇到unknown error: cannot focus element

    事件背景:写脚本遇到sendkey时报错unknown error: cannot focus element,仔细查了,元素定位什么的都没问题,通过js注入修改数据后,保存成功,但是再进入编辑状态查 ...

  10. [USACO17FEB]Why Did the Cow Cross the Road I G

    一开始想写$DP$,发现直接转移完全有后效性 所以本小蒟蒻写了个最短路 每走三步就要吃草是这个题最难搞的地方,我们建图时不妨只对于距离等于三的点连边 考虑完全覆盖所有情况,从一个点走一步,两步,然后三 ...