VBA在Excel中部首组查字法的应用
文章目录
- 前言
- 一、网站截图
- 二、操作思路
- 三、代码
-
- 1.创建数据发送及返回方法
- 2.创建截取字符串中的数值的方法
- 3.获取部首对应的编码
- 4.获取特定部首的汉字
- 运行效果截图
前言
使用汉语字典查生字、生词,多用拼音查字法和部首查字法。以前都是用纸质字典查找生字、生词,现在不认识的字、不了解的词,只要的一部手机,上网搜索便知,比纸质字典更快、更便捷。本来想写一个输入汉字返回拼音的代码,后觉得实用性不强,一来多用拼音输入法,再者少量的生字、生词,没人会打开Excel,利用编程或公式查生字。
孩子小学语文作业会有不同部首,写出多个汉字的作业。遇到生僻的部首,家长朋友不一定能答出来,有时写出来的,也不一定保证是对的。本着实用性原则,用VBA写了个代码,批量获取已知部首的汉字,比逐个在手机上搜索更快、更多、更直观。
依然是利用网上的数据库,这次用的网站是“汉辞网”。
一、网站截图
网站的每个部首对应一个数字编码,如“工”对应311,“八”对应211等,如下图。
二、操作思路
1、先建一个获取网站所有部首的方法,每个部首拆分,截取部首部分,组成一个数组;再将每个部首对应的数字编码拆分,截取编码部分,成组成一个数组;将两个数组和编码对应;2、比对所需部首,如需要查找部首“王”组成的字,查找部首数组“王”的位置并对应查到该部首的编码,将编码组合成新网址,打开新网站并获取网站返回数据;3、截取返回信息的有用数据即可。
三、代码
1.创建数据发送及返回方法
Function sendAndget(url As String, resultA As String) '创建数据发送及返回方法
Dim re As Object
Dim rl As Object
Dim st As Object
On Error Resume Next
Set xmlhttp = CreateObject("msxml2.xmlhttp")
xmlhttp.Open "GET", url, False
xmlhttp.send
If xmlhttp.READYSTATE =