浅谈静态局部变量及其在VBA中的巧用

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:awind54335
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:论文首先阐述了变量的相关知识点,然后根据变量的作用域和生存期对VBA中的变量分类作简要介绍,并采用实例对静态局部变量与动态局部变量的进行剖析,最后根据静态局部变量的特点,并结合本人的教学实践,实现了具有特殊效果的窗体设计。
  关键词:VBA;变量作用域;变量生存期;静态局部变量
  中图分类号:TP312 文献标识码:A 文章编号:1009-3044(2017)08-0081-02
  变量是指程序运行时其值可以改变的数据,每一个变量都必须有一个名称(通常用标识符来命名),用以标识其在内存单元的存储位置,内存位置上的数據就是该变量的值。变量是内存中的临时单元,变量的类型决定了变量存取数据的类型,能参与什么哪些运算以及用它来保留在程序执行过程中的中间结果和最后结果,这是程序设计语言课中的一个基础知识点,比如《Visual Basic》、《C|语言》等课程中都有这一知识点的介绍。怎样才能正确有效使用变量?理清变量在程序中的作用范围和持续时间是非常关键,因为变量的作用范围定义不当和持续时间的问题,将会导致数据传递失败和数据消失,是一个不可忽视的问题,特别是在基于面向对象程序设计理念进行应用系统开发时尤为重要。
  1VBA中变量的分类与区别
  1.1变量的分类
  VBA(VisualBasic ForApplications)是VisualBasic简化的编程语言,作为一种嵌入式语言,与Access配套使用,多用于高级窗体和报表设计。变量的作用范围也称为变量的作用域,在VBA中按作用域变量可分为局部变量,模块变量,全局变量3类;变量的持续时间也称为变量的生存期,即从变量定义语句所在的过程第一次运行到程序代码执行完毕并将控制权交回主调过程为止的时间,局部变量按生命周期可分为动态局部变量和静态局部变量2类。下面结合本人的教学实践,谈谈静态局部变量在VBA中灵活运用。
  1.2静态局部变量与动态局部变量的区别
  为了更好运用静态局部变量,理清静态局部变量与动态局部变量的区别成为急需解决的关键问题,拟通过上机试运行下面两段程序来进行理解学习。
  1)动态局部变量应用举例
  程序运行结果:三次显示都是m的值为1
  2)静态局部变量应用举例
  程序运行结果:三次显示分别是m的值为1;m的值为2;m的值为3
  分析比较结果得出静态局部变量与动态局部变量的区别:动态局部变量在过程调用结束时自行消失,即再次被调用时变量会初始化;而静态局部变量可在程序示例间保留它的值,即再次被调用时仍保留它上一次的值,也就是说静态局部变量的生存期是整个模块执行的时间。2静态局部变量的巧用
  因为静态局部变量的生存期是整个模块执行的时间,在利用VBA进行小型数据库开发时,如能巧妙地运用静态局部变量,将达到事半功倍的效果。
  1)利用静态局部变量进行用户只有进行三次登录权限的窗体设计,界面图1所示:
  编写代码时,只需在“登录”按钮的单击事件中,设置一个静态局部变量,每单击一次“登录”按钮,让静态局部变量记数一次,当记数达到3时将终止用户继续登录。具体代码如下:
  2)利用静态局部变量进行动画窗体延时效果的设计
  登录成功后,可以不直接跳转到系统主界面,而是来一段系统功能简介或系统使用说明,并配以动画效果,持续时间最好控制在30-60秒内,这样做既能让用户对系统或使用说明有一定了解,又能避免用户产生厌烦情绪。为实现这一功能设计了“欢迎”窗体,界面如图2所示。
  编写代码时,只需在“欢迎”窗体的Timer事件中,设置一个静态局部变量i,每间隔TimerInterval时段,即每执行一次Timer事件,i就计数一次,至到执行的次数满足延时的时间时停止。具体代码如下:
  为了达到延时效果,还需设置将Me.TimerInterval属性设置为100毫秒,通过执行300次,即300*100=30000毫秒,最终实现延时30秒的效果。如对窗体横向滚动效果代码进行改写,即可实现纵向滚动或闪烁等效果的延时。
  3结束语
  论文首先就变量的概念和特点及其功能进行了相关介绍,紧接着对变量的作用范围和持续时间将会影响数据传递和存储进行剖析,并对VBA中的变量进行分类和区分,最后根据静态局部变量的特点,并巧妙地运用到窗体设计中,实现了窗体的特殊效果。通过以上内容探讨和研究,对变量有了更深层次的理解和认识,该知识点的理解和掌握有助于其他程序设计语言学习,程序设计时切忌死记硬背,要灵活运用,从而达到提高编程能力的目的。
其他文献
企业技术进步缓慢有功能性、基础性、政策性和机制性障碍,必须从宏观角度着力进行管理革新.
在本届上海国际车展上,国际厂商展示的多款车型均采用了采埃孚先进的传动和底盘技术,其中有奥迪首款混合动力车Q5、宝马5系混合动力车,以及宝马ActiveHybrid7等。现将采埃孚展示
根据无人值守变电站的实际要求,将智能视频监控技术引入到变电站的遥视系统中,实现了运动目标的自动检测。介绍了独立分量分析的基本理论和算法,并用快速独立分量分析(FastICA)方
一上海一百集团的2000年目标:经营规模400亿元,进出口总额2亿美元.总资产50亿元,国有净资产8亿元。集团公司董事长陈显钊犹不尽兴:“不能与人家比,美国零售业巨头渥尔玛集团
(2017年12月20日)全面贯彻落实党的十九大精神开启中国制造和中国创造并举新征程构建新时代转向高端发展的新蓝图朝着超越引领战略目标奋勇前进二、树立新的发展理念,开启新的
在全球服务贸易快速增长的背景下,首先对咨询服务业的国内外发展现状作了简要对比,然后分析了加速发展我国咨询服务业的必要性,最后针对性地提出了几个方面的对策.
企业内部经济责任制是确保组织目标实现,调动员工主动性、积极性、创造性的一个十分重要的制度和手段.企业内部经济责任制的构建应把握宏观和微观两个层面,遵循效率优先、兼
穿在上海。漫步南京路、淮海路、四川路、石门路等上海主要商业街市,那鳞次栉比的服装公司,名牌服装专卖店以及百货商厦服饰部,那姹紫嫣红、争奇斗异的新潮时装款式,那琳琅满
电铁牵引负荷是大功率的三相不平衡负载,在进行分析时宜采用三相分析法。本文通过建立牵引变电所的三相谐波模型,利用C++程序语言编制了仿真程序,结合现场实测数据,计算了我
推销过程中,推销员对市场顾客类型采用ABC分类法进行分类时出现的悖反情况是:从成交额和效益潜力两个角度划分出的顾客不具有同一性,A类客户可能变成B类客户,B类客户可能变成