首页 VBA-考勤管理PPT课件

VBA-考勤管理PPT课件

举报
开通vip

VBA-考勤管理PPT课件第7章学习使用VBA“超级货架”——什么是VBA“内部结构”——VBA程序的基本语法与书写格式“增加内涵”——功能模块的创建“兢兢业业”——VBA程序的调试典型实例:给“考勤管理系统”添加功能代码*7.1“超级货架”——什么是VBAVBA(VisualBa...

VBA-考勤管理PPT课件
第7章学习使用VBA“超级货架”——什么是VBA“内部结构”——VBA程序的基本语法与书写格式“增加内涵”——功能模块的创建“兢兢业业”——VBA程序的调试典型实例:给“考勤管理系统”添加功能代码*7.1“超级货架”——什么是VBAVBA(VisualBasicforApplication)是MicrosoftOffice系列的内置编程语言,其功能十分强大。在Access2007中,VBA的功能是通过模块来实现的。事实上,在Access2007中,程序设计的核心工作就是编写模块和事件过程。如下图所示为Access2007中VBA程序的编写界面。*功能模块属性窗格*7.2“内部结构”——VBA程序的基本语法与书写格式 7.2.1变量和常量在任何编程语言中,都要用到变量和常量,它们都是用来存储数据的。变量存储的是经常需要变动的数据,常量储存的是不用改变的数据(或对象)。1.变量变量在引用之前必须被声明,声明一个变量就是事先将变量的有关信息告诉程序,声明变量要使用Dim语句,其语法格式为:*DimStr1AsString'声明一个名为Str1的字符串变量Str1="Hello"'给变量赋值Str1="Goodbye"'改变变量的值Dim变量名 [As类型] 以上语句中的“As类型”子句是可选的。如果选择了该子句,就可以定义变量的数据类型或对象类型。例如以下语句:*2.常量在VBA中,声明常量的语法格式为:Const常量名[As类型]=表达式在这个表达式中,“常量名”的命名规则同变量一样,语句中的“表达式”是由数值常量和字符串常量以及运算符组成的。例如:PublicConstPI=3.1415926 ’声明一个在整个程序中都能使用的常量PI* 7.2.2流程控制语句程序员最基本和最重要的工作就是告诉计算机何时要做出什么样的动作。就像一个交通警察指挥大量的车辆和行人何时该走、何时该停、该向哪边走一样。本节主要介绍If语句、SelectCase语句、Do...Loop语句、For...Next语句、GoTo语句以及With语句等流程控制语句,下面我们分开详细介绍。*1.If语句If语句是我们最常用的一种分支语句。它符合人们通常的语言习惯和思维习惯。比如if(如果)绿灯亮是真,then(那么)车就可以通行,else(否则)车辆要等待行人通过。If语句有三种语法形式。1)最简单的形式    if<条件>then<该条件产生的结果(过程语句)>*2)带有else的形式if<条件>then <过程语句1> else <过程语句2>endif*if<条件1>then <过程语句1> elseif<条件2>then <过程语句2>...... else<过程语句n>endif3)带有多重条件的形式*2.SelectCase语句根据表达式的值,来决定执行多组语句中的哪一组,这就是SelectCase语句。它的语法如下:SelectCase表达式[Case表达式列表1[语句陈述1]][Case表达式列表2[语句陈述2]]......[Case表达式列表n[语句陈述n]]EndSelect*下面的实例可以使我们进一步了解SelectCase语句的用法。DimScoreAsIntegerSelectCaseScore  CaseIs>=90  MsgBox"YougotanAonthetest."  Case80To89  MsgBox"YougotaBonthetest."  Case60To79  MsgBox"YougotaConthetest."  CaseElse  MsgBox"Youfailed."EndSelect在此例子中,Case语句按照先后顺序进行比较,首先执行与第一个Case条件相匹配的代码,若不存在匹配的条件,则执行CaseElse语句,然后程序将执行EndSelect语句后面的代码。*3.Do…Loop语句用Do...Loop语句可以定义要多次执行的语句块。我们也可以定义一个条件,当这个条件为假时,就结束这个循环。Do...Loop语句有以下两种形式。第1种: Do[{While|Until}<条件>]  [<过程语句>]  [ExitDo][<过程语句>] Loop*第2种:Do[<过程语句>][ExitDo][<过程语句>]Loop[{While|Until}<条件>]上面格式中,<条件>是用来检查真(非零)或假(零或Null)的一个比较谓词或表达式。While子句和Until子句的作用正好相反。如果指定了一个While子句,则当<条件>是真,就继续执行。如果指定了Until子句,则当<条件>为真时,循环执行结束。*4.For…Next语句按照指定次数来重复执行同一组语句,这就是For...Next语句。在事先不知道循环需要执行多少次时,应该使用Do循环。而事先知道要执行多少次时,最好使用For...Next语句。For…Next语句的语法格式为:For循环控制变量=初值To终值Step步长循环语句Next*其中,“Step步长”可以省略,省略时步长为1。循环控制变量可以为整型、长整型、实型以及字符串;但最常用的还是整型和长整型。在循环中可以通过ExitFor跳出循环体,下面的例子说明了For…Next语句的使用方法:Fori=1To100Step2  Score=Score+10Next上边语句的意义是:将初值赋予循环控制变量,即循环控制变量的值从1开始,在执行完一次循环体后,将循环控制变量加上步长2,当i的值大于100时,跳出循环。*<条件>是一个逻辑表达式,if语句通过检查<条件>的真或假来进行语句判断。比如,若<条件>为True(真),则执行紧接在关键字Then后面的一条或多条语句。若<条件>为False(假),则无论接下来是什么语句,程序都检查下一个Else<条件>或执行Else关键字后面的语句。*6.With语句在引用对象的时候,我们通常会感到冗长的对象限定,繁琐而又累赘。如果你喜欢简单,那么用With可以简化代码中对复杂对象的引用。可以用With语句建立一个“基本”对象,然后用一个速记符号来引用这个对象上的对象、集合、属性或方法。With<对象引用>[<过程语句>]EndWith*例如,下面的代码来自一个Access窗体,它设置了一个组件框控件的“可见性”属性,并调用了该组件框的两个方法。WithMe![cboAuthorSearchList]  .Visible=True ‘设置为可见  .Dropdown  ‘点击下拉菜单EndWith* 7.2.3过程与函数简单地讲,过程和函数就是指能够执行特定功能的语句块,都是为编写程序而服务的。但是它们之间是有区别的。1.过程过程是VBA代码的一个单元,它包括一系列用于执行某个任务或是进行某种计算的语句。过程只执行一个或多个操作,没有返回值。比如下面就是一个过程的例子。*SubcmdSmallFont_Click()WithSelection.Font.Name="Arial".Size=16EndWithEndSub上面列出的代码就是一个简单的过程。实际上在With下的所有操作,默认访问的都是cmdSmallFont对象通常用Sub声明一个新的过程,其语法格式如下:*[Private|Public|Friend][Static]Subname(arglist)  statementsEndSub各项的意义请参考书中 表格 关于规范使用各类表格的通知入职表格免费下载关于主播时间做一个表格详细英语字母大小写表格下载简历表格模板下载 7-1。*2.函数函数其实也是过程,不过它是一种特殊的、能够返回具体值的过程,返回的值通常是计算的结果或测试的结果,能够在表达式中使用。用Function语句可以声明一个新函数。其语法形式如下:[Public|Private|Friend][Static]Functionname[(arglist)][Astype][statements][name=expression][ExitFunction]EndFunction各项的意义请参考书中表格7-2* 7.2.4注释语句注释语句就是穿插在程序代码中并对代码的意义和功能进行说明的语句,它不参与程序的运行。在VBA程序中,添加注释可以通过两种方式来实现:一是使用Rem语句,二是使用“’”符号。DimMystr1,Mystr2Mystr1=”Welcome”:Rem为Mystr1赋值。Mystr2=”Goodbye”’为Mystr2赋值。这也是一条注释,无需使用冒号。“Rem注释”在语句之后要用冒号隔开。* 7.2.5语句的连写和换行DimMyNOAsStringMyNo=“2002091229”可以写成下面的一行: DimMyNoAsString:MyNo=“2002091229”一般而言,程序语句都是一句一行,但是有些时候可能需要在一行中连写几句代码。这时需要用冒号“:”来分开这些不同用途的语句。例如:*另外,还有一种情况在编程中经常遇到,那就是程序代码过长,虽然一行能够写完。但是书写起来不方便,看上去也不美观,希望将这句代码分开写成几行。这时要用到空格加下划线“_”,比如下面的例子。PublicConstDate=#1/1/2000#,Author="Nancy",_Tel="62774059"空格加下划线(“_”)被称为续行号,它可以把语句分成两行或多行,用于解决程序代码中语句过长的问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 。*7.3“增加内涵”——功能模块的创建 7.3.1模块简介模块作为Access数据库中的一个重要对象,它是将VBA声明、表达式和程序作为一个单元进行保存的集合。模块由一个通用声明部分以及一个或多个子程序或函数组成的。模块的通用声明部分用来对要在模块中或模块之间使用的变量、常量、自定义数据类型以及模块级的Option语句进行声明。其它部分为子程序或函数部分,具体如下图所示。** 7.3.2创建具有密码验证的主窗体模块1打开“计件工资管理系统”数据库,打开新建“窗体”的设计视图单击组合框按钮,将鼠标光标移动到要添加组合框的位置单击鼠标左键,添加一个组合框23将组合框的标签修改为“请选择要打开的表格”。然后双击组合框,打开组合框的“属性”窗口单击“数据”标签,在“行来源类型”下拉列表中选择“值列表”项在“行来源”中输入几个已经创建好的窗体的名称:“人事表”;“加班表”;“请假表”45*6在组合框的下面添加两个命令按钮,并更名为“打开”和“关闭”选中“打开”按钮,然后单击代码按钮,打开该窗体的代码编辑窗口7*9在事件列表中选择“Click”项在对象选择下拉列表中选择“Command2”项为“打开”按钮的单击事件输入代码810*12在事件列表中选择“Click”项在对象选择下拉列表中选择“Command3”项为“关闭”按钮的单击事件输入代码1113*15在对象列表中选择“Form”,在事件过程列表中选择“Load”事件为Load事件输入代码14*16双击打开“密码窗体”,将首先弹出要求输入密码的窗口,输入密码,单击“确定”按钮 单击组合框的下拉按钮,从下拉列表中选择一个窗体名称(这里选择“人事表”)后,单击“打开”按钮即可打开相应的表格了17* 7.3.3创建查询窗体模块1打开“计件工资管理系统”数据库,打开新建窗体的“设计视图”2创建一个命令按钮,将其标题更改为“查询”添加一个文本框,将其标签的标题更改为“请输入员工编号:”重复相同的操作创建另外一个标签为“返回的员工姓名:”的文本框34*创建一个函数Search,编写如下代码在对象列表中选择“Command4”,在事件过程列表中选择“Click”事件,为“查询”按钮(Command4)的单击(Click)事件编写“Text2.Value=Search(Text0.Value,”PrimaryKey“,”人事表“)”代码56*通过以上步骤我们就完成了函数的创建和调用,双击打开“查询员工姓名”窗体,执行的效果如图所示* 7.3.4边学边练:使用VBA增加“计件工资管理系统”的功能我们这里主要需要添加在“系统设置”窗口实现“人事调整”功能的代码。“工资录入和查询”、“加班录入和查询”和“请假录入和查询”在这三个窗体中都需要添加代码来实现各自的功能。需要在“本月工资统计”和“上月工资统计”报表中添加代码实现动态打印报表。*1、给“系统设置”窗体添加代码这是“系统设置”窗体的操作界面我们首先需要实现的功能是:在下拉标签中进行选择时,员工编号列表框和右侧的“员工列表”同时跟着改变*2添加当单击“打印个人档案”按钮时应执行的操作添加当选择下拉列表时,应执行的操作添加当选择列表项时,应执行的操作13*5添加错误提示窗口设置代码添加用于自动添加班组操作的代码添加“同步更新操作”函数,完成代码的添加46调用更新过程7*2、给“录入和查询”窗体添加代码在此窗体我们主要应实现,当输入或选择了员工编号后,在姓名栏中自动显示出此人的姓名,然后当选择用户或添加记录时,应在下边员工列表中显示其当天的工作记录,以及合计的工资数*1另外需要定义两个函数――“chaxun”和“chaxun2”(至于代码请到书中查询),并在此处进行调用,然后保存就可以了对“件数”文本框的限制操作,即让其只能输入数字2*3、给“工资统计和打印”报表添加代码打开“本月工资统计”的设计视图,添加三个标签控件,分别位于“报表页眉”、“页面页眉”和“主体”节,其中位于“报表页面”的节我们将会在代码中动态更新其内容,所也我们这里将其命名为“月”在“主体”节中,添加一个文本框――“工资合计”,此文本框用于显示最后的工资统计记录21*这是窗体的最终执行效果,关于报表代码,由于代码较多,我们这里不再列举,请大家到正文中查询和分析*7.4“兢兢业业”——VBA程序的调试1、调试工具栏及功能简单地讲,“调试”就是查找错误并对错误进行排除的过程。以下我们从调试工具栏及功能、设置断点、跟踪和设置监视点等方面对VBA程序调试进行介绍。当您对程序进行调试时,可以使用VBA的“调试”工具栏,它提供了一些非常实用的工具。打开“调试”工具栏的方法为:*选择【视图】→【工具栏】→【调试】命令,即可调出“调试”工具栏工具栏中各按钮的功能可在正文中查询*2、设置断点直接在要设置断点的位置单击左边的断点设定区,如图所示。当您再次单击该处时,断点的设定将被取消也可以将插入点移到要设置断点的位置,然后打开“调试”菜单,选择“切换断点”命令,或者单击“调试”工具栏中的按钮来设置断点*运行到此处,程序暂停将鼠标光标移动到变量处即可查看变量的值*3、跟踪1在中断点程序停止执行单击逐语句按钮执行下一句2*4、设置监视点1打开一个模块编辑窗口,选择主菜单的【调试】→【添加监视】命令,弹出“添加监视”对话框*3在“监视类型”列表中选择“当监视值改变时中断”。单击“确定”按钮,完成监视的添加在“表达式”文本框中输入要监视的表达式或变量(必须是代码中存在的变量或表达式,这里输入“panduan1”,下边可选择“变量”所在的“过程”和“模块”,通常保持系统默认即可)2*监视点设定好以后,运行程序,在“监视窗口”中您可以查看程序运行的结果程序运行过程中,当监视的值发生变化时,程序中断*7.5典型实例:给“考勤管理系统”添加功能代码1打开“信息录入”窗体的设计界面后,单击数据库工具栏的代码按钮打开VB程序编写窗口在“代码编辑”窗口添加代码2*3选择“通用”下拉列表中的“添加记录”项,在其click事件中添加代码(代码请到书中查询),此段代码实现添加记录的操作。4在“代码编辑”窗口的“通用”下拉列表中选择“出勤统计”项,在其click事件中添加代码(代码请到书中查询),此段代码对出勤信息进行统计。5下面为“添加记录”和“退出窗体”命令按钮添加代码。在“代码编辑”窗口的“通用”下拉列表中选择“添加记录”项,在其click事件中添加书中代码。*
本文档为【VBA-考勤管理PPT课件】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
机构认证用户
金水文库
鑫淼网络科技有限公司主要经营:PPT设计 、课件制作,软文策划、合同简历设计、计划书策划案、各类模板等。公司秉着用户至上的原则服务好每一位客户
格式:ppt
大小:2MB
软件:PowerPoint
页数:0
分类:小学语文
上传时间:2020-05-10
浏览量:8