ExcelHome技术论坛

 找回密码
 免费注册
QQ登录 只需一步,快速开始
   
高效办公必会的Office99uu优优 永久免费,网表让Excel秒变数据库 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
Excel不给力? 何不试试FoxTable! 国内首部Excel函数公式学习大典 职场充电黑科技, Office微99uu优优 免费下载Excel行业应用视频
300集Office 2010微99uu优优 Tableau-数据可视化工具 突破Excel限制,用活字格提高效率 12门Excel免费公开课任你学
你的Excel 201099uu优优学习锦囊 欲罢不能, 过目难忘的 Office 新界面 免费的Excel考勤计算系统
查看: 260483|回复: 2199
打印 上一主题 下一主题

[分享] 抛砖引玉,VBA编写的简单VBA程序解释器,期待您的进一步完善与改进(最新:进化5)

  [复制链接]
TA的精华主题TA的得分主题
跳转到指定楼层
1
发表于 2010-3-16 09:06 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
原计划进行一个星期的测试及查询库添加,再将功能进一步完善后再推出的,这两天突然来了大单,可能这个星期都没有时间写了,所以提前放了出来,主要功能基本具备(但查询库需进一步完善),一些计划中的功能留了空位,整个程序没有加任何保护,完全开源,另外提醒,不要对一个三天完成的程序抱太高的期望,本人此举纯属抛砖引玉,借助家里人的力量让她进化成熟,希望能对其进行改进的您也不吝将改进后的版本发一份到这里或我的邮箱kevin.chengcw@yahoo.com.cn

大体总结了一下:
对初学者:可以让你相对轻松的读懂VBA程序,了解语句结构组成
对中级者:可以让您检测您写的程序的简练程度及可读性,还可以让您有个程序DIY的机会
对高级者:这个可以当做您的试验田,看能否给出些更高级的功能

不足之处:
现阶段是以断字的方式进行翻译,对函数结构识别及常数等处理不好::(
词库量小,对初级程序解释可以,但对高级程序语句,如正则,SQL语句等暂时还不能处理,但如果增加词库相关词语的话还是可以勉强解释,希望对此方面擅长人士进行完善:handshake
界面及处理方式简单,经常会有漏网之鱼:loveliness:
功能未能实现模块化调用,对于改进的人可能会是个小阻碍::L
其他你使用中遇到的问题[em07]

下一步目标:
编辑栏增加右键功能(已完成,功能有待继续完善)
将界面中的功能进一步完善,也可能根据需要再增加相关功能
实现函数及函数结构的识别,类似在编辑器里那样,可以提醒您函数后各个参数的对应功能(相对工作量大过现在,但实际意义更大)
功能实现模块化调用,便于升级和维护

给改进者:
对于增加查询库内容:
程序的查询内容全部放在"Sheet1"中,可根据格式将新内容写入,技巧为:以Cells为例,因其有单独和带括号的两种形式,意义可能不同,所以请将其分成"Cells"和"Cells("两种形式分别存放,大小写形式最好与程序里要求的一致
对于程序工作原理:
本程序将VBA程序先以回车换行符进行分割,放入数组,再对数组成员进行如下操作:
1. 查找数组成员是否出现在查询库中(即"Sheet1"中),找到即返回对应解释(因为是整句,一般固定语句有效),找不到进入下一步
2. 对语句进行拆分,进一步查找(本步可以分解出变量,变量将不进行解释,但如果变量名与关键字相同时易混淆)如最终查找不到,则以原样形式出现在解释中
3. 对具体功能有疑问者可以发帖留言,本人将进行详细解说

为免误人子弟,特此声明,本程序仅适合初学者辅助学习VBA使用,无法解释高级用法中词汇,所以希望有此特长之高手能帮忙添加,最后希望大家共勉,能够写出更好的解释器来帮助新人,谢谢

20100316:忙,忙里偷闲,把预留的功能按钮补上相应功能,算是一个小的进化吧
20100317:仍是忙,不过下午有了些空闲,应64楼ruty的建议,增加了通过关键词反查关键字的功能,又小小的进化了一下,希望大家试用一下,看效果好不好
20100324:最近反馈了几个出错的问题,进行了修正,增加了一些关键字的解释,并增加了编辑框的右键菜单,右键菜单的代码是在家里找到的,再次小小的进化一下
20100406: 新增了词条解释功能,类似于读书笔记一样,如果以前你曾经添加过相关解释和用法示例,下一次看的时候可以直接用鼠标选中该词,右键选"解释关键字"即可看到以前储存的内容,如此帮助记忆及理解,因相关工作量过大,建议大家把自己收集sheet2内容传到这里,我会定期的整理合并并贴出来,谢谢
20100617: 发现几个小问题,修正一下,都不知道会不会有5了[em07]
20100801: 上传一个网友wzqoo提供的修改版,详见第1129楼:http://club.excelhome.net/viewthread.php?tid=547868&page=76#pid4077174
                   在此特别感谢wzqoo网友,你是第一个提供修改版的人,谢谢!
20101015:  感谢网友hhzjxss提供了两个版本,有兴趣的网友可以到如下地址查看
                   本帖1410楼:http://club.excelhome.net/viewthread.php?tid=547868&page=94#pid4314414
                   本帖1417楼:http://club.excelhome.net/viewthread.php?tid=547868&page=95#pid4317968
                    感谢网友hhzjxss的积极参与!
20101028: 昨晚从网上下载了些源码看,排列不整齐,看起来很麻烦,写了个代码缩进程序,添加进来,相信对读懂代码之间的关系会有所帮助,另根据网友的
                  要求,添加了最小化功能,勉强算是推出个5吧,谢谢大家的支持,很多灵感来自你们。
20110316: 一周年庆,可惜,最近都没啥进化啦::L

很高兴看到更多人参与进来!

LDY:很好的思路,内容也比较完整,结合帮助更容易加深对代码的理解,对初学者帮助极大。


提示:不需要下载全部的文件,只下最新的就可以了,不删除旧的文件是为了纪念我一步步走过来的脚印::P

如有疑问,除本论坛外,也可到下面地址发问:http://www.exceltip.net/?fromuser=kevinchengcw ,感谢您 的关注与支持

[ 本帖最后由 kevinchengcw 于 2011-3-16 20:29 编辑 ]
VBA程序解释器_原始版.rar 57.04 KB, 下载次数: 9229
VBA程序解释器_进化_5.rar 104.92 KB, 下载次数: 26869
VBA程序解释器_网友wzqoo修改版.rar 103.29 KB, 下载次数: 19367

评分

参与人数 14鲜花 +27 收起 理由
非常谢谢 + 2 “七种兵器”之“倚天VB剑”初挟可横行
hyjsht + 2 优秀作品
梧月书声 + 2 太强大了
小x白 + 2 感谢帮助
zhusong1998 + 2 太强大了,亲
查看全部评分
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏180 分享分享 有用有用34 无用无用
TA的精华主题TA的得分主题
2
发表于 2010-3-16 09:22 | 只看该作者
谢谢,支持一下楼主的共享精神。:handshake
TA的精华主题TA的得分主题
3
 楼主| 发表于 2010-3-16 09:27 | 只看该作者 |楼主
原帖由 joforn 于 2010-3-16 09:22 发表
谢谢,支持一下楼主的共享精神。:handshake


谢谢,相信来这里的人大多都是愿意与人共享的
TA的精华主题TA的得分主题
4
 楼主| 发表于 2010-3-16 09:58 | 只看该作者 |楼主
TA的精华主题TA的得分主题
5
发表于 2010-3-16 10:03 | 只看该作者
TA的精华主题TA的得分主题
6
发表于 2010-3-16 10:05 | 只看该作者
TA的精华主题TA的得分主题
7
 楼主| 发表于 2010-3-16 10:12 | 只看该作者 |楼主
原帖由 来生缘 于 2010-3-16 10:05 发表
好像解释得比较简单。。。


所以说不要抱太高期望,只是给暂时只是给初学者辅助使用的[em07]
TA的精华主题TA的得分主题
8
发表于 2010-3-16 10:14 | 只看该作者
本帖最后由 ExcelHome 于 2012-10-6 16:38 编辑

哈哈,又一手很好的学习资料啊~

TA的精华主题TA的得分主题
9
发表于 2010-3-16 10:15 | 只看该作者
TA的精华主题TA的得分主题
10
 楼主| 发表于 2010-3-16 10:20 | 只看该作者 |楼主
谢谢各位支持,lb_bn大侠你已经关注这么久了,帮忙改进一下[em07]
您需要登录后才可以回帖 登录 | 免费注册
本版积分规则
关闭

最新热点上一条 /1 下一条

关注官方微信,每天坐享新鲜教程
手机版|关于我们|联系我们|ExcelHome    GMT+8, 2018-1-18 19:45 , Processed in 0.083227 second(s), 11 queries , Gzip On, MemCache On.
Powered by Discuz! X3.3 © 2001-2017 Wooffice Inc.
    沪公网安备 31011702000001号 沪ICP备11019229号 本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:徐怀玉律师 李志群律师
快速回复 返回顶部 返回列表
99uu优优