baiytu 发表于 2016-4-24 12:20:43

在excel中实现汉字转换拼音全拼

    原文地址:在excel中实现汉字转换拼音全拼作者:光平
    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"
    arrWord(31) = "拆chai"
    arrWord(32) = "chan"
    arrWord(33) = "伥chang"
    arrWord(34) = "抄chao"
    arrWord(35) = "车che"
    arrWord(36) = "抻chen"
    arrWord(37) = "cheng"
    arrWord(38) = "吃chi"
    arrWord(39) = "充chong"
    arrWord(40) = "抽chou"
    arrWord(41) = "出chu"
    arrWord(42) = "搋chuai"
    arrWord(43) = "巛chuan"
    arrWord(44) = "chuang"
    arrWord(45) = "吹chui"
    arrWord(46) = "chun"
    arrWord(47) = "踔chuo"
    arrWord(48) = "呲ci"
    arrWord(49) = "从cong"
    arrWord(50) = "凑cou"
    arrWord(51) = "粗cu"
    arrWord(52) = "汆cuan"
    arrWord(53) = "崔cui"
    arrWord(54) = "cun"
    arrWord(55) = "搓cuo"
    arrWord(56) = "da"
    arrWord(57) = "呆dai"
    arrWord(58) = "丹dan"
    arrWord(59) = "当dang"
    arrWord(60) = "刀dao"
    arrWord(61) = "de"
    arrWord(62) = "灯deng"
    arrWord(63) = "di"
    arrWord(64) = "dian"
    arrWord(65) = "刁diao"
    arrWord(66) = "爹die"
    arrWord(67) = "丁ding"
    arrWord(68) = "diu"
    arrWord(69) = "东dong"
    arrWord(70) = "dou"
    arrWord(71) = "嘟du"
    arrWord(72) = "duan"
    arrWord(73) = "dui"
    arrWord(74) = "吨dun"
    arrWord(75) = "多duo"
    arrWord(76) = "e"
    arrWord(77) = "en"
    arrWord(78) = "儿er"
    arrWord(79) = "发fa"
    arrWord(80) = "帆fan"
    arrWord(81) = "方fang"
    arrWord(82) = "飞fei"
    arrWord(83) = "分fen"
    arrWord(84) = "丰feng"
    arrWord(85) = "fo"
    arrWord(86) = "fou"
    arrWord(87) = "夫fu"
    arrWord(88) = "旮ga"
    arrWord(89) = "该gai"
    arrWord(90) = "干gan"
    arrWord(91) = "冈gang"
    arrWord(92) = "皋gao"
    arrWord(93) = "戈ge"
    arrWord(94) = "给gei"
    arrWord(95) = "根gen"
    arrWord(96) = "更geng"
    arrWord(97) = "工gong"
    arrWord(98) = "勾gou"
    arrWord(99) = "估gu"
    arrWord(100) = "瓜gua"
    arrWord(101) = "乖guai"
    arrWord(102) = "关guan"
    arrWord(103) = "光guang"
    arrWord(104) = "归gui"
    arrWord(105) = "衮gun"
    arrWord(106) = "呙guo"
    arrWord(107) = "铪ha"
    arrWord(108) = "嗨hai"
    arrWord(109) = "han"
    arrWord(110) = "夯hang"
    arrWord(111) = "蒿hao"
    arrWord(112) = "诃he"
    arrWord(113) = "ei"
    arrWord(114) = "hen"
    arrWord(115) = "亨heng"
    arrWord(116) = "hong"
    arrWord(117) = "侯hou"
    arrWord(118) = "乎hu"
    arrWord(119) = "花hua"
    arrWord(120) = "怀huai"
    arrWord(121) = "欢huan"
    arrWord(122) = "huang"
    arrWord(123) = "灰hui"
    arrWord(124) = "昏hun"
    arrWord(125) = "huo"
    arrWord(126) = "丌ji"
    arrWord(127) = "加jia"
    arrWord(128) = "戋jian"
    arrWord(129) = "江jiang"
    arrWord(130) = "艽jiao"
    arrWord(131) = "阶jie"
    arrWord(132) = "巾jin"
    arrWord(133) = "jing"
    arrWord(134) = "冂jiong"
    arrWord(135) = "jiu"
    arrWord(136) = "ju"
    arrWord(137) = "juan"
    arrWord(138) = "噘jue"
    arrWord(139) = "军jun"
    arrWord(140) = "咔ka"
    arrWord(141) = "开kai"
    arrWord(142) = "刊kan"
    arrWord(143) = "kang"
    arrWord(144) = "*kao"
    arrWord(145) = "e"
    arrWord(146) = "ken"
    arrWord(147) = "keng"
    arrWord(148) = "空kong"
    arrWord(149) = "抠kou"
    arrWord(150) = "ku"
    arrWord(151) = "夸kua"
    arrWord(152) = "蒯kuai"
    arrWord(153) = "宽kuan"
    arrWord(154) = "匡kuang"
    arrWord(155) = "亏kui"
    arrWord(156) = "坤kun"
    arrWord(157) = "扩kuo"
    arrWord(158) = "垃la"
    arrWord(159) = "来lai"
    arrWord(160) = "兰lan"
    arrWord(161) = "啷lang"
    arrWord(162) = "捞lao"
    arrWord(163) = "仂le"
    arrWord(164) = "雷lei"
    arrWord(165) = "塄leng"
    arrWord(166) = "li"
    arrWord(167) = "俩lia"
    arrWord(168) = "lian"
    arrWord(169) = "liang"
    arrWord(170) = "liao"
    arrWord(171) = "咧lie"
    arrWord(172) = "邻lin"
    arrWord(173) = "伶ling"
    arrWord(174) = "溜liu"
    arrWord(175) = "lo"
    arrWord(176) = "龙long"
    arrWord(177) = "娄lou"
    arrWord(178) = "露lu"
    arrWord(179) = "驴lv"
    arrWord(180) = "孪luan"
    arrWord(181) = "掠lue"
    arrWord(182) = "抡lun"
    arrWord(183) = "luo"
    arrWord(184) = "妈ma"
    arrWord(185) = "埋mai"
    arrWord(186) = "颟man"
    arrWord(187) = "mang"
    arrWord(188) = "猫mao"
    arrWord(189) = "me"
    arrWord(190) = "mei"
    arrWord(191) = "men"
    arrWord(192) = "meng"
    arrWord(193) = "咪mi"
    arrWord(194) = "mian"
    arrWord(195) = "喵miao"
    arrWord(196) = "乜mie"
    arrWord(197) = "民min"
    arrWord(198) = "名ming"
    arrWord(199) = "谬miu"
    arrWord(200) = "摸mo"
    arrWord(201) = "哞mou"
    arrWord(202) = "母mu"
    arrWord(203) = "na"
    arrWord(204) = "nai"
    arrWord(205) = "囡nan"
    arrWord(206) = "囔nang"
    arrWord(207) = "孬nao"
    arrWord(208) = "讷ne"
    arrWord(209) = "馁nei"
    arrWord(210) = "嫩nen"
    arrWord(211) = "能neng"
    arrWord(212) = "妮ni"
    arrWord(213) = "拈nian"
    arrWord(214) = "娘niang"
    arrWord(215) = "鸟niao"
    arrWord(216) = "捏nie"
    arrWord(217) = "nin"
    arrWord(218) = "宁ning"
    arrWord(219) = "妞niu"
    arrWord(220) = "农nong"
    arrWord(221) = "奴nu"
    arrWord(222) = "女nv"
    arrWord(223) = "疟nue"
    arrWord(224) = "nuan"
    arrWord(225) = "nuo"
    arrWord(226) = "噢o"
    arrWord(227) = "讴ou"
    arrWord(228) = "pa"
    arrWord(229) = "拍pai"
    arrWord(230) = "pan"
    arrWord(231) = "乓pang"
    arrWord(232) = "抛pao"
    arrWord(233) = "呸pei"
    arrWord(234) = "喷pen"
    arrWord(235) = "peng"
    arrWord(236) = "丕pi"
    arrWord(237) = "片pian"
    arrWord(238) = "剽piao"
    arrWord(239) = "氕pie"
    arrWord(240) = "姘pin"
    arrWord(241) = "娉ping"
    arrWord(242) = "钋po"
    arrWord(243) = "仆pu"
    arrWord(244) = "七qi"
    arrWord(245) = "掐qia"
    arrWord(246) = "千qian"
    arrWord(247) = "呛qiang"
    arrWord(248) = "悄qiao"
    arrWord(249) = "切qie"
    arrWord(250) = "亲qin"
    arrWord(251) = "qing"
    arrWord(252) = "qiong"
    arrWord(253) = "丘qiu"
    arrWord(254) = "区qu"
    arrWord(255) = "quan"
    arrWord(256) = "炔que"
    arrWord(257) = "qun"
    arrWord(258) = "ran"
    arrWord(259) = "rang"
    arrWord(260) = "荛rao"
    arrWord(261) = "惹re"
    arrWord(262) = "人ren"
    arrWord(263) = "扔reng"
    arrWord(264) = "日ri"
    arrWord(265) = "戎rong"
    arrWord(266) = "rou"
    arrWord(267) = "ru"
    arrWord(268) = "ruan"
    arrWord(269) = "rui"
    arrWord(270) = "闰run"
    arrWord(271) = "ruo"
    arrWord(272) = "仨sa"
    arrWord(273) = "sai"
    arrWord(274) = "三san"
    arrWord(275) = "sang"
    arrWord(276) = "sao"
    arrWord(277) = "色se"
    arrWord(278) = "森sen"
    arrWord(279) = "僧seng"
    arrWord(280) = "杀sha"
    arrWord(281) = "筛shai"
    arrWord(282) = "山shan"
    arrWord(283) = "伤shang"
    arrWord(284) = "shao"
    arrWord(285) = "奢she"
    arrWord(286) = "申shen"
    arrWord(287) = "升sheng"
    arrWord(288) = "尸shi"
    arrWord(289) = "shou"
    arrWord(290) = "书shu"
    arrWord(291) = "刷shua"
    arrWord(292) = "衰shuai"
    arrWord(293) = "闩shuan"
    arrWord(294) = "霜shuang"
    arrWord(295) = "谁shui"
    arrWord(296) = "吮shun"
    arrWord(297) = "说shuo"
    arrWord(298) = "厶si"
    arrWord(299) = "忪song"
    arrWord(300) = "sou"
    arrWord(301) = "苏su"
    arrWord(302) = "狻suan"
    arrWord(303) = "sui"
    arrWord(304) = "孙sun"
    arrWord(305) = "唆suo"
    arrWord(306) = "他ta"
    arrWord(307) = "tai"
    arrWord(308) = "坍tan"
    arrWord(309) = "汤tang"
    arrWord(310) = "tao"
    arrWord(311) = "忑te"
    arrWord(312) = "teng"
    arrWord(313) = "剔ti"
    arrWord(314) = "天tian"
    arrWord(315) = "tiao"
    arrWord(316) = "贴tie"
    arrWord(317) = "厅ting"
    arrWord(318) = "tong"
    arrWord(319) = "偷tou"
    arrWord(320) = "凸tu"
    arrWord(321) = "湍tuan"
    arrWord(322) = "推tui"
    arrWord(323) = "吞tun"
    arrWord(324) = "乇tuo"
    arrWord(325) = "wa"
    arrWord(326) = "歪wai"
    arrWord(327) = "弯wan"
    arrWord(328) = "wang"
    arrWord(329) = "危wei"
    arrWord(330) = "wen"
    arrWord(331) = "翁weng"
    arrWord(332) = "挝wo"
    arrWord(333) = "乌wu"
    arrWord(334) = "夕xi"
    arrWord(335) = "呷xia"
    arrWord(336) = "仙xian"
    arrWord(337) = "乡xiang"
    arrWord(338) = "xiao"
    arrWord(339) = "些xie"
    arrWord(340) = "心xin"
    arrWord(341) = "兴xing"
    arrWord(342) = "凶xiong"
    arrWord(343) = "休xiu"
    arrWord(344) = "戌xu"
    arrWord(345) = "xuan"
    arrWord(346) = "xue"
    arrWord(347) = "xun"
    arrWord(348) = "丫ya"
    arrWord(349) = "咽yan"
    arrWord(350) = "殃yang"
    arrWord(351) = "邀yao"
    arrWord(352) = "椰ye"
    arrWord(353) = "一yi"
    arrWord(354) = "yin"
    arrWord(355) = "应ying"
    arrWord(356) = "哟yo"
    arrWord(357) = "佣yong"
    arrWord(358) = "优you"
    arrWord(359) = "yu"
    arrWord(360) = "yuan"
    arrWord(361) = "曰yue"
    arrWord(362) = "yun"
    arrWord(363) = "za"
    arrWord(364) = "zai"
    arrWord(365) = "zan"
    arrWord(366) = "zang"
    arrWord(367) = "zao"
    arrWord(368) = "ze"
    arrWord(369) = "贼zei"
    arrWord(370) = "怎zen"
    arrWord(371) = "zeng"
    arrWord(372) = "吒zha"
    arrWord(373) = "zhai"
    arrWord(374) = "沾zhan"
    arrWord(375) = "张zhang"
    arrWord(376) = "zhao"
    arrWord(377) = "蜇zhe"
    arrWord(378) = "贞zhen"
    arrWord(379) = "zheng"
    arrWord(380) = "之zhi"
    arrWord(381) = "中zhong"
    arrWord(382) = "州zhou"
    arrWord(383) = "朱zhu"
    arrWord(384) = "抓zhua"
    arrWord(385) = "拽zhuai"
    arrWord(386) = "专zhuan"
    arrWord(387) = "妆zhuang"
    arrWord(388) = "隹zhui"
    arrWord(389) = "zhun"
    arrWord(390) = "卓zhuo"
    arrWord(391) = "仔zi"
    arrWord(392) = "宗zong"
    arrWord(393) = "邹zou"
    arrWord(394) = "租zu"
    arrWord(395) = "zuan"
    arrWord(396) = "zui"
    arrWord(397) = "尊zun"
    arrWord(398) = "昨zuo"
    arrWord(399) = "zuo"
    For i = 1 To Len(expression)
    STR = Mid(expression, i, 1)
    If (Asc(STR) < 0) Then
    For j = 1 To 399
    If Left(arrWord(j), 1) > STR Then
   If limit = -1 Then
    STR = Mid(arrWord(j - 1), 2) & delimiter
   Else
    STR = Mid(arrWord(j - 1), 2, limit) & delimiter
   End If
   Exit For
    End If
    Next
    End If
    HZQP = HZQP   STR
    Next
    HZQP = Left(HZQP, Len(HZQP) - Len(delimiter))
    End Function
    '在你的excel中创建宏,输入以下内容,然后在excel中使用自定义函数=hsqp(字符表达式,"",开关参数)
    '三种用法: =hzqp(A2,"",-1) =hzqp(A2,"-",-1) =hzqp(A2," ",-1)
    '单词 公式 拼音 公式
    '我们 women women   wo-men wo men
    '=hzqp(A2,"",-1) =hzqp(A2,"-",-1) =hzqp(A2," ",-1)
    '三种用法:=hzqp(A2,"",-1)=hzqp(A2,"-",-1) =hzqp(A2," ",-1)

翩翩男风 发表于 2016-4-24 22:14:33

什么东东?看不明白{:19:}{:19:}{:19:}{:19:}{:08:}{:08:}{:08:}
页: [1]
查看完整版本: 在excel中实现汉字转换拼音全拼