正确学会ExcelVBA的16堂课-VBA程序的编写和运行_第1页
正确学会ExcelVBA的16堂课-VBA程序的编写和运行_第2页
正确学会ExcelVBA的16堂课-VBA程序的编写和运行_第3页
正确学会ExcelVBA的16堂课-VBA程序的编写和运行_第4页
正确学会ExcelVBA的16堂课-VBA程序的编写和运行_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、正确学会Excel VBA的16堂课VBA程序的编写和运行程序的编写和运行认识VBA开发环境认识VBA代码与过程变量的使用函数的使用认识认识VBA开发环境开发环境 VBA启动方式与操作界面 工程窗口 代码窗口与用户窗体代码窗口与用户窗体代码窗口与用户窗体 工程中的每一个对象都有一个相关联的代码窗口,主要作用是编辑和存放程序。每个对象的代码窗口都由【对象】下拉列表、【过程/事件】下拉列表、【过程视图】图标和过程编辑区等部分组成,如图2-5所示。认识认识VBA代码与过程代码与过程 完成任务的过程程序 执行指定任务的事件程序 对象、属性和方法 认识不同的运算符 VBA中的常用语句对象、属性和方法对象

2、、属性和方法1. 对象对象 在Excel中处理数据时需要面对的是工作簿、工作表、单元格和图表等内容,实际上这些就是Excel VBA中的对象。如果要查看Excel VBA中的对象,可以在VBA代码编辑器中选择【视图】【对象浏览器】菜单项或按F2快捷键,即可打开【对象游览器】窗口进行查看,如图2-29所示。对象、属性和方法对象、属性和方法2属性属性 属性是指对象的特征。如果把手机看做一个对象,那么手机的颜色、款式和型号等都是该对象的属性。对Excel VBA来说,属性是Excel对象所具有的特征,如单元格的值、列的宽度、行的高度以及工作表的个数等。(1)在程序中设置对象属性的代码结构(对象和属性

3、之间用“.”分隔以表示从属关系)对象名.属性=属性值如代码“Application.ScreenUpdating = False”是将Excel的程序对象(Application)的屏幕刷新(ScreenUpdating),属性设置为否(False)。(2)在程序中取得对象的属性的代码结构变量=对象.属性例如代码“h = Range (B3:D10).Cells.Count”是求出单元格区域“B3:D10”中单元格的个数,并将该数值赋给变量h,其中Cells和Count都是Range对象的属性。对象、属性和方法对象、属性和方法3方法方法 方法是作用在对象上的操作。比如开门或关门。对Excel

4、VBA的对象来说,复制单元格内容、删除工作表或打开要查看的工作表等,这里的“复制”是单元格对象方法,“删除”是针对工作表对象的方法,“打开”是针对工作簿对象的方法。对象方法的语法格式为:对象.方法 (自变量)例如语句:Range (B3:B10).ClearFormats,该语句是清除单元格区域“B3:B10”的格式,其中ClearFormats是作用于单元格Range对象的方法。Sheets(Sheet1).Move after:=Sheets(Sheet2),该语句功能是将工作表Sheet1移动到工作表Sheet2之后,其中Move是作用于工作表对象上的方法,自变量after补充移动的位置

5、。【注意】 对象和方法之间用“.”隔开,方法和自变量之间要用空格隔开。自变量是对方法作用于对象时的补充,如工作表移动是一个操作工作表的方法,但移动的具体位置可通过设置后面的自变量来补充。变量的使用变量的使用 变量的数据类型 强制声明变量 变量的声明方法变量的数据类型变量的数据类型 变量的数据类型用于控制用户声明的变量能够存储哪些类型的数据,声明变量就是声明变量的数据类型。在学习变量前必须了解并掌握变量的数据类型,因为每种类型都有一定的适用范围和区域,如果在程序中声明不当,程序的运行或运行结果就会出现错误或达不到要求。不同的数据类型有不同的存储空间,对应数值的范围也不同。字节型(Byte)。该类

6、型在内存中占1个字节,为0255之间的无符号整数。通常用来存储二进制文件、图形文件及声音文件等,字节类型无类型说明符。字符串型(String)。字符串是指由若干字符组成的一个字符序列,这些字符可以是ASCII码范围中的任意一个有效字符,该类型在内存中占1个字节,类型说明符为“$”。整型(Integer)。该类型在内存中占2个字节,为-3276732767之间的整数。整型数值通常用十进制表示,也可以用八进制或者十六进制表示无符号整数。通常,在-3276732767之间的整数尾部加一个“%”作为整数的类型说明符,如258%,-369%。长整型(Long)。该类型在内存中占4个字节,为-214748

7、36482147483648之间的数。其类型说明符为“&”。对于超过-3276732767范围,而在-21474836482147483648之间的整数,无论是否带有“&”,VBA均将其作为长整型处理。变量的数据类型变量的数据类型单精度浮点型(Single)。该类型在内存中占4个字节,取值范围为1.40*10(-45)到3.40*1038之间的实数,其有效数为7位。类型说明符为“!”。双精度浮点型(Double)。该类型在内存中占8个字节,取值范围为4.97*10(-324)到1.79*1038之间的实数,其有效位数为15位。类型说明符为“#”。货币型(Currency)。货币类型是计算货币而

8、设置的数据类型,通常情况下它是小数位数固定为4位的定点数。它在内存中占8个字节,为-922337203685477922337203685477之间的数。类型说明符为“”。日期型(Date)。日期类型用来表示日期。该类型在内存中占8个字节,取值范围为1/1/100012/31/9999之间的日期,无类型说明符。布尔型(Boolean)。该类型在内存中占2个字节,只有True和False两个取值,无类型说明符。变体类型(Variant)。变体类型也称通用类型,它是一种通用的、可变的数据类型。可以表示上述任何一种数据类型。函数的使用函数的使用 使用VBA函数 调用工作表函数 自定义函数使用使用VB

9、A函数函数VBA函数是Excel VBA所提供的函数,这些函数可以在程序中直接使用,并返回需要的值。例如使用Round函数对D5单元格中的数值“258.2536”进行四舍五入计算后将结果显示在E5单元格中,具体的代码如下:Sub 四舍五入()Range(E5).Value = Round(Range(D5), 2)End Sub运行这段代码,即可将D5单元格中的数值进行四舍五入计算,并将结果显示在E5单元格中,如图2-66所示。使用使用VBA函数函数在Excel VBA中查找可以使用的VBA函数方法是,在代码窗口中输入“vba”,再输入“.”,即可在弹出的列表框中显示出VBA中所有函数,如图2

10、-67所示。调用工作表函数调用工作表函数在Excel VBA中也可以使用部分工作表函数,调用方法为:Application.WorksheetFunction.工作表函数。例如使用CountA调用函数统计工作表中A列到G列的非空单元格个数。在代码窗口中输入如下代码:Sub 非空单元格个数()MsgBox Application.WorksheetFunction.CountA(Range(A:G)End Sub运行上述代码,即可弹出一个提示信息,显示统计出的工作表中A列到G列的非空单元格个数,如图2-68所示。自定义函数自定义函数在Excel VBA中,通过编写函数过程程序可以自定义一些函数,

11、且这些函数可直接被其他过程或程序调用。如在VBA代码窗口中插入一个新模块并输入如下代码,如图2-69所示。Function sheetcount() sheetcount = ThisWorkbook.Sheets.CountEnd Function在工作表中调用定义的“Sheetcount”函数,即在工作表任意单元格中输入“=Sheet count()”,如图2-70所示。自定义函数自定义函数在输入完毕后,单击编辑栏上的【输入】按钮 ,即可得到显示如果,如图2-71所示。也可以在其他程序中调用自定义的函数。在模块窗口中输入“更改工作表名称”过程。输入完毕后将光标置于该过程中,如图2-72所示。单击【运行子过程/用户窗体】按钮 ,此时返回Excel工作表中,即可看到工作表的名称已经被更改,如图2-73所示。专家课堂(常见问题与解答)专家课堂(常见问题与解答)点拨点拨1:在VBA代码中使用对象和方法时,运行下面这段代码时,为什么总显示“语法错误”的提示?Sub dk()Sheets(Sheet1).Moveafter:=Sheets(Sheet2)End Sub解答:解答:出现这种情况是因为用户在编写代码时,方法和自变量之间没有使用空格隔开,因为在VBA代码中,对象和方法之间要用“.”隔

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论