ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 684|回复: 2

[求助] 关于“”VBA把汉字转拼音(李晓锋版)”的求助

[复制链接]

TA的精华主题

TA的得分主题

发表于 2023-2-15 19:58 | 显示全部楼层 |阅读模式
各位大大:
     看了利用VBA把汉字转拼音(李晓锋版)的帖子后,我想把拼音带声调和多音字加进去,试了多次多音字都不成功,麻烦各位大佬看下说明按要求给改一下!
比如“和”的多音字,有hé,huó,hú,huò等
原贴地址:https://blog.csdn.net/lxf2580/article/details/54409636/
一下是代码中李晓峰关于多音字的说明:
多音字功能代码修改方法:把以下代码段
pinyin = pinyin1(p)
If pinyin = p Then pinyin = pinyin2(p)
If pinyin = p Then pinyin = pinyin3(p)
If pinyin = p Then pinyin = pinyin4(p)
If pinyin = p Then pinyin = pinyin5(p)
修改为:pinyin = pinyin1(p) & “多音分割符” & pinyin2(p)& “多音分割符” & pinyin3(p) & “多音分割符” &pinyin4(p)& “多音分割符” & pinyin5(p)
然后把每个pinyin子函数中的case else 下的代码删除,就可以了。 但是多音字的字典得你自己修改。
多音字的功能相关代码其实改动很小,就是把所有拼音遍历一遍就可以把所有读音都拼接起来,但是要把多音字的字典弄全这个工作量太大了,暂时没找到合适的工具能够批量生成文字的拼音。以后如果有合适的工具了,可以增加一个可选参数来完成多音字功能
1.拼音带声调是可以实现的,无非就是把目前的字典再细化,将输出的拼音改成带声调的拼音。不过我不会去做这个事情,太麻烦,有兴趣的话你自己可以试一下。
2.这个功能是否可以用VBA实现独立运行,这个我不知道是否可以实现。另外不知道你的使用场景,给不了你更多的建议。
3.目前这个代码是专门解决网上通用版的Excel汉字转换拼音功能中存在的问题,追求的是广泛通用,其他个性化的功能需要用户自己改造。
针对多音字的转换需求,@likewam @iuytr 目前我能想到两个方案,方案一:将多音字单独列出,进行独立的拼音转换。方案二:将多音字添加到对应的多个读音选项位置,每次转换时遍历整个字库。这两个方案的编码工作量虽然都很大,但还只是工时问题,最大的问题是需要先整理出一个多音字读音库供我使用,否则就需要我翻遍整个新华字典,这个工作量太大了。



李晓峰.zip

89.67 KB, 下载次数: 4

TA的精华主题

TA的得分主题

发表于 2023-2-16 09:03 来自手机 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-2-16 12:52 | 显示全部楼层
zpy2 发表于 2023-2-16 09:03
https://club.excelhome.net/forum.php?mod=viewthread&tid=1652758&fromguid=hot&extra=&mobile=2&_dsign= ...

多谢大神,能解决我的问题,非常感谢
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-19 05:28 , Processed in 0.027190 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表