ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[原创] 从实例学VBA编程

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2009-2-22 22:09 | 显示全部楼层 |阅读模式
【写在开贴之初】
  虽说这几天的温度仍旧没有超越个位数,但江南的春意已经无法被遮掩,连日的春雨所催生的那丝绿意正在树梢上、花墙上、草地上慢慢的化开,而鸟儿早已耐不住冬天的寂寞,早早地开始歌唱。这一切都告诉我,一个崭新的春天已经来到了。
  还记得在《VBA入门指南》的结尾我曾留下许诺,将推出另一篇《从实例学VBA编程》奉献给广大初学者,并以此带领大家逐步迈入VBA编程的殿堂。但时间已经经过了将近一个月,而教程迟迟没有推出,以致于许多朋友在《VBA入门指南》篇的最后,不断跟帖企盼早日看到续集。大家可能都很想知道其中的缘由,其实原因很简单,我没有找到一种能让大家在读完帖子后顿时感觉恍然大悟的方法。我在平日和网友交流解惑的过程中经常会表达一种观点,“情愿不写,也不愿意写一些教材式的、与现有的许许多多教程相似的东西出来,否则只能是浪费了彼此的时间和希望。”,正是由于在这样的思想的指引下,这些天来,我一直在努力探索一种恰当的组稿的方式,以致于写了删、删了写、写了又删、删了又写…...直至今日,终于完成了初稿,迫不及待地推出来奉献给大家,希望能给大家在学习VBA时带来些许帮助的同时,得到更多的不同观点、看法、评论,甚至批评。目的只有一个,不断完善这种写作方式,使之能更好地成为大家学习过程中,手边的一本指南、一个随身的老师,或者是一个能随时解决遇到的问题的朋友......其实,这篇教程最终的作者是正在阅读的各位朋友,你们的建议将随时体现在后续的教程里。让我们共同努力把这篇教程做好。


2009-2-22】我们的第一个案例——管好我们的台帐(一)
  如果您还没有明白以下问题:VBA是什么?VBA的代码应该写在哪里?VBA中关于EXCEL的对象模型是什么样的?VBA中的关键字有哪些?如何使用?......那么请先阅读《VBA入门指南》篇(链接:http://club.excelhome.net/viewthread.php?tid=390711&page=1&fromuid=701638#pid2488755)。
  在已经了解了关于VBA的一些基础知识以后,从今天开始,我们将一起来系统地学习用VBA解决实际应用问题的方法。啥?已经打哈欠了?千万别以为我会按部就班的列出一条条的原理、代码和语法,我只会告诉大家我们想干什么?然后帮助大家分析该怎么做?在我们完成任务的过程中遇到的知识点我会作详细的解说,我还会把经常容易犯的错误告诉大家,最后我会总结性地贴出所有用到的知识点索引和我们完成的成果——XLS文件。下面就开始我们的第一个任务——管好我们的台帐。
  俗话说,“工欲善其事,必先利其器”。大家在日常工作中是否经常会被要求完成这样或那样的记录、台帐、报表?可能大家还停留在每次用WORD编辑制作这类文档,或者已经开始用EXCEL来为日常工作作记录,亦或者已经有了适合自己的EXCEL表格模板来管理和协助自己的工作。那么你是否愿意通过一种更加灵活、方便,类似于一个完善的、为您的需求量身定制的商品化软件的方式来提升你的管理能力,提高工作效率呢?这就是我们这次要完成的任务——台帐管理系统。
  由于这是我们第一个任务,因此在开始这个任务的最初阶段,我会用一些篇幅来给大家介绍如何更加有效的规划一个任务。可能大家之前都有这样的经历。当你不满足于现有的重复劳动的工作模式时,你满怀希望地想要设计一个功能完善的EXCEL文件,以简化工作、提高效率。然后,你就开始迫不及待地根据自己脑子里的需求去设计、制作这个文件。当你好不容易把主要的一个或几个功能完成的时候,你突然发现,后面要做的功能和前面已经完成的部分存在冲突,这可能表现在窗体控件数组中少添加了一个按钮,或者菜单中缺少了一个菜单项目等等。这个时候,如果重新修改前面的设计,可能需要花费很多的时间,而如果不修改又无法完成接下来的任务,真是进退两难啊!为了避免这种尴尬的情况发生,我们在开始一个项目设计工作的最初阶段,应该花费一定时间做好规划工作。那么我们该如何进行设计前的规划工作呢?按照软件工程学的理论,我们可以采用的方法有很多,在此我并不想按照理论一一罗列并详细介绍,因为这样做只能给大家起到催眠的效果,所以我就直接通过“台帐管理系统”这个例子,来告诉大家该如何规划一个项目。顺便提示一下,大伙在看我的教程的时候,不仅要学习教程介绍的软件编程技术并加以反复实践,而且要透过这类说明式的文字努力了解和体会一种学习的方法,只有这样才能举一反三,获得“渔”的真谛。(真是超级啰嗦啊!)
  首先,我们来考虑这样三个问题。第一,我们现在是怎么工作的?第二,我们现在的工作模式有哪些弊端或不足?第三,我们能通过已经具备的条件(包括技术条件、掌握的资源、经济条件等)完成哪些改进?我想每个人由于身处的工作环境和工作性质以及行业背景等方面的不同,对于这三个问题都有各自的理解和独特的答案。为了统一认识,我们这里只是基于通用行业的台帐功能来进行规划,所以大家在思考的时候,请避开和您的工作背景有关的因素。我们不妨分析一下,我们现在可能是通过手工的方式来管理我们的台帐记录,比如印制一些管理表格,将发生的业务情况手工填写登记在册,以便需要时备查。那么这样的方式有什么不足呢?可能你会感觉每次登记时,特别是登记的内容很多时,需要写很多文字,这样非常累而且效率很低(当然,如果长时间使用计算机而不写字,就像我这样用WORD写教程,你会忘记很多汉字怎么写,哈哈,到时候不要怪我没提醒你啊~);还可能在整理汇总的时候发生错误;书写出来的台帐也不如打印的那么整齐漂亮......那么我们如果通过EXCEL,能实现哪些方面的改善呢?基于这个思路,我们开始规划台帐系统的功能。(未完待续)(下一篇地址:http://club.excelhome.net/viewthread.php?tid=400196&page=6&fromuid=701638#pid2574706

[ 本帖最后由 yagi2008 于 2009-3-2 21:59 编辑 ]

评分

4

查看全部评分

TA的精华主题

TA的得分主题

发表于 2009-2-22 22:42 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2009-2-22 23:15 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2009-2-22 23:37 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
支持,正好在写一个工资输入的系统,现在写不下去了!

TA的精华主题

TA的得分主题

发表于 2009-2-22 23:50 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
支持楼主

TA的精华主题

TA的得分主题

发表于 2009-2-23 00:28 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2009-2-23 10:49 | 显示全部楼层

回复 1楼 yagi2008 的帖子

一气读完老师的教案,通俗易懂,幽雅风趣.希望能继续和老师学习.

TA的精华主题

TA的得分主题

发表于 2009-2-23 11:55 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2009-2-23 12:47 | 显示全部楼层
强烈支持 .强烈期待中...谢谢老师....

TA的精华主题

TA的得分主题

发表于 2009-2-23 13:16 | 显示全部楼层
支持楼主,正想建议楼主做这样的事情,没想到楼主已经开始了。谢谢!您的讲解是我等学生之福!谢谢分享您的知识!
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-9-17 02:57 , Processed in 0.040420 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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