A列最后非空行的下一行
Lrow = Range("A" & Rows.Count).End(xlUp).Row + 1
Range("A" & Lrow) = Rows.Count
属性或方法的对象
usedRegion的对象:Worksheet;
currentRegion的对象:Range;
动态数组
Dim arr()
n = cells.rows.count
ReDim arr(1,n)
列号与列数
.Row
.Rows.Count
录了一个宏Marco1后,如何再接着录?
1 执行Marco1;
2 录制宏;
3 将录制的宏复制到Marco1;
相关设置
1 避免因错误而出现的代码中断:On Error Resume next;
2 不要出现警告对话框:Application. Displayalerts = false;
3 禁止屏幕刷新:Application.ScreenUpdating = false;
4 禁用对象事件:Application.EnableEvents=True
按偏移量重置区域引用
Range("D4").offset(2,-2),相当于是Range("F2");
Range("D4:F6").offset(2,2),相当于是Range("F6:H8");
按宽度与高度重置区域,Range.Resize(RowSize,ColumnSize),其中参RowSize代表重置后的行数,ColumnSize代表重置后的列数。两个参数皆为可选参数,
Range("D4").Resize(2,2),相当于是Range("D4:F6");
Select必须是对活动工作表的操作
worksheets("Name").select
range("A1:B5".select
事件代码:先是代码位置→对象列表:worksheet→过程列表:change;会自动产生工作表的Worksheet_change事件的程序外壳。
长代码换行:" _"(前面有空格);
注释代码:"'";
对象三要素:属性、方法、事件;如汽车是一个对象,颜色则是它的属性之一;启动操作是汽车的方法;当你把汽车启动后,启动则是一个事件,事件的定义可以在某事件发生后,自动执行一些动作,如汽车启动这个事件发生时,可以提示乘客系安全带这个动作;
Adrees(0,0)取得指定单元格的相对地址;
函数
1 VBA提供的函数,如查找函数Match(),与Find()方法功能类似。使用格式:Applicaiton.函数名,Lookup(),countif,left;
2 VBA使用Excel内置函数,格式:Range.Formula = "=...";
3 VBA自定义函数,用Function过程,供VBA代码中使用或Excel当做公式使用;
3.1 添加自定义函数的说明:工具→宏→输入自定义函数的名称→选项→说明;
3.2 指定函数的类别:Application.MacroOptions "自定义函数", category:=(0-9);
为提高工作效率,尽量使用VBA内置函数或Excel内置函数;
∧
∨