优秀的编程知识分享平台

网站首页 > 技术文章 正文

Excel VBA 学习要点总结(excel vba从入门到进阶)

nanyue 2024-09-05 18:18:15 技术文章 7 ℃

最近自学Excel VBA笔记总结,分享给大家?

声明变量储存长度:Dim 变量名 As Sting * 10 字符串类型存储10个字符

编写语句时换行,空格+“_”+回车。

多行语句合并,每行语句结束后加“:”(英文字符冒号)添加下一行语句。

注释语句,“'”英文字符单引号后加注释语句,可单独一行或在代码结束后添加,Rem +注释语句,只能单独一行。

调试时,利用注释语句,在不运行的代码前添加单引号或Rem,方便调试,不要重复删除和添加代码。

Application对象

常用对象:

Application.ScreenUpdating=True|False 设置是否显示代码执行过程,可加快程序运行速度。

工作表对象.Delete 删除工作表对象

Application.DisplayAlerts=True|False 是否显示警告信息

Application.EnableEvents=True|False 启用/禁用事件

Application.WorksheetFunction.工作表函数,调用工作表中有,VBA中无的函数,VBA已存在的函数不能使用此方法。

Application常用属性:

工作簿

引用工作簿:Workbooks.Item(索引号),简写:Workbooks(索引号),通过工作簿名来引用:Workbooks("工作簿名")

工作簿.Name 返回工作簿名称

工作簿.Path 返回工作簿路径

工作簿.FullName 返回工作簿路径和名称

工作簿Workbook方法,Add添加新工作簿,Open打开工作簿,Activate激活工作簿,Save保存工作簿,SaveAs另存工作簿,SaveCopyAs另存为且不关闭原工作簿,Close关闭工作簿

工作表

引用工作表:Worksheets.Item(索引号),简写:Worksheets(索引号),通过工作表名来引用:Worksheets("工作表名")

ActiveSheet引用当前活动工作表

工作表常用属性和方法:Add插入新工作表,Name工作表名称属性,Delete删除工作表,Activate和Select可激活工作表,Copy复制工作表,Move移动工作表,Visible属性显示或隐藏工作表

WorkSheets.Count获取当前工作簿中工作表的数量

Range对象

引用单元格区域:Range("单元格区域")

引用多个不连续区域:Range("区域1,区域2,区域3...")

引用相交区域:Range("区域1 区域2")不同区域间用空格分隔

引用两个区域围成的矩形区域:Range("区域1","区域2")

Range("区域").Cells(行,列)引用区域中指定行列的单元格,Cells(索引n) 引用区域中的第n个单元格,索引号大于区域单元格数量时,自动向行方向扩展,列数不变

Cells属性只能引用一个单元格

同时选中两个不连续区域:Application.Union(Range("区域1"),Range("区域2")).Select

Range.Offset(水平方向,竖直方向)方法可控制对象的移动距离,参数1正为下负为上,参数2正为右负为左移动。

Resize(行,列)方法用于缩放单元格区域

UsedRange属性返回工作表中已使用的单元格围成的矩形区域,且包括其中的空单元格

CurrentRegion属性返回当前区域以空行和空列组合为边界的区域,CurrentRegion区域小于等于UsedRange返回的区域

End属性:返回一个 Range 对象,它表示包含源范围的区域末尾的单元格。 相当于按 End+向上键(xlUp)、End+向下键(xlDown)、End+向左键(xlToLeft)或 End+向右键(xlToRight)。此为只读 Range 对象。

将记录写入新行:Range("区域").End(xlDown).Offset(1,0).Value=记录内容

Value属性:表示单元格内容

Count返回单元格区域内的单元格个数,区域.Rows.Count返回区域行数,区域.Columns.Count返回区域列数

Address属性,返回单元格地址

Activate与Select选择的区别:Activate在激活区域选择一个单元格后,区域仍呈选中状态,Select则只会选中一个单元格。

Clear清除所有,ClearComments清除批注,ClearContents清除内容,ClearFormats清除格式

Copy,Paste复制和粘贴方法:单元格区域1.copy[Destination:=] 单元格区域2

Delete方法删除单元格

其他对象

Names对象,使用Name方法定义名称

Comment对象:AddComment方法添加批注,若单元格已有批注,再添加将出错。

Font对象:设置字体格式

Worksheet对象事件

Worksheet_Change事件:对象中单元格内容发生改变时触发该事件

Worksheet_SelectionChange事件:选定的单元格发生改变时触发该事件

Worksheet_Activate事件:激活工作表时触发该事件

Worksheet_Deactivate事件:禁用(激活其他工作表,当前工作表变成不活动工作表)该工作表时发生该事件

其他Worksheet事件:BeforeDoubleClick事件:双击工作表之后,双击操作之前发生该事件;BeforeRightClick事件:右击工作表,右击操作之前发生该事件;Calculate重新计算工作表之后发生该事件;FollowHyperlink事件:单击工作表中的任意超链接时发生;PivotTableUpdate事件:在工作表中更新数据透视表之后发生;

Workbook对象事件

Workbook_Open事件:打开工作簿时运行该事件

Workbook_BeforeClose事件:关闭工作簿之前发生该事件

Workbook_SheetChange事件:工作簿中任意单元格改变时发生该事件

其他事件方法

Application.Onkey(表示按键字符串,运行的事件)方法:当按特定键或特定的组合键时运行指定的过程。

Application.OnTime(运行时间,运行过程[,最后运行时间][,True|False])方法:安排一个过程在将来的特定时间运行(既可以是具体指定的某个时间,也可以是指定的一段时间之后)。

InputBox方法中的Top,Left参数代表输入窗口中工作表的相对位置,InputBox函数中xpos,ypos参数表示输入窗口中在平面中的相对位置。

InputBox方法Type参数可设置返回值的数据类型,InputBox函数只返回String类型

最近发表
标签列表