VBA知识框架
2016-10-11 20:23:29 0 举报
AI智能生成
VBA基础知识—part1
作者其他创作
大纲/内容
常用方法、函数
禁止弹出警告对话框 : application.displayalerts = false<br>
<h1 accuse="qTitle" style="margin: 0px; padding: 0px; font-stretch: normal; word-break: break-all; position: relative;"><font color="#333333" face="Microsoft YaHei, SimHei, arial"><span style="font-size: 16px; line-height: 26px;">禁止(恢复)屏幕刷新<br>Application.ScreenUpdating = False<br>Application.ScreenUpdating = true</span></font><br></h1>
定义变量格式: format(变量名,格式)
批量填充: <b>需填充的目标区域.FormulaR1C1 </b>= "填充的内容"或指定单元格的值
设置单元格数值格式 <b>目标区域.NumberFormatLocal </b>= "相应代码"
<b>遍历函数</b>: dir 路径 [& "\" & "*.xlsx"]
基本概念
宏
通过录制宏查看代码,可查看一些不知道代码的功能如何实现
对象
单元格
表示方式: [2,1] [a1] range("a1") range("a1","d5") range("a2:d5") cells(2,3) <br> 行:rows(1)表示第一行 ; 列: columns(1) 表示第一列<br>activecell 表示活动单元格
单元格基础操作
<b>选择</b>: 需选择的区域.select
<b>删除单元格</b>: 需选择的区域.delect
<b>清除</b>
清除全部:目标区域.clear
<b>单元格内容</b>:目标区域.clearcontents
单元格格式:目标区域.clearformats
<b>插入:</b> 区域.insert shift:=xldown
省略inserti后面的内容则默认为活动单元格向下移动
移动(剪切,粘贴操作)
初始区域. cut range(目标区域的初始单元格)
复制-粘贴
初始区域.copy range(目标区域的起始单元格)
查找
查找范围.find("查找的内容",)
返回的是区域
工作表worksheet
activeworksheet sheets("sheet1") sheets("工作表名") sheets(N)
常用操作<br>
新增工作表 : worksheets.add <br>
删除工作表: 目标工作表.delete<br>
重命名: 目标工作表.name="新工作表名"<br>
移动: 目标工作表.move before,after<br>
复制: 目标工作表.copy before,after<br>
工作簿workbooks
表达方式: workbooks(序号) workbooks("工作簿名") thisworkbook activeworkbook
常用的操作
新建: workbooks.add
获取工作簿所在的文件路径: thisworkbooks.path
可应用到同路径工作簿打开关闭,后面通过连接符 && "文件名"可指定打开或保存到同路径的指定文件
保存: activeworkbooks.SaveAs 路径 & "\文件名.xlsx"
对于非第一次保存和不是需要另存为的文件,可直接 activebooks.save 相当于ctrl+s
打开: workbooks.open 路径 文件名
关闭: activebooks.<b>close</b>
.close 1 保存并关闭
.colse 0 不保存并关闭
删除: kill 路径&文件名
集合
属性
方法
元素
常量
变量
数据类型
整型“%”
单精度数值“!”
双精度数值“#”
字符型“$”
对象型“as……”
常用运算
算术运算
+、-、*、\、mod、^
连接运算符
&、+
比较运算符
=,<>,<,>,<=,>=
like
通配符
逻辑运算符
基础语句
区域定位的方法
常规定位:[a1:d5] 、range("a1","d5")、
偏移定位
基准单元格.offset(行数,列数)
偏移,基准位置为(0,0),下正上负,右正左负
基准单元格.resize(行数,列数)
以基准单元格为(1,1)坐标选择一定区域
整行、整列
整行:基准单元格.entirerow
整列:基准单元格.entirecolumn
并集区域 union(rng1,rng2,...)
选择不相邻,没有交集的两个区域
可应用于筛选,然后将不相邻的区域聚合
交集区域 intersect(rng1,rng2,..)
求区域的交集,两个区域必须存在交集
动态单元格区域
DO条件结合
基准单元格.currentregion
获取边界单元格
单元格.end (xldown/xlup/xlleft/xlright) <br>分别获取基准单元格向下,向上,向左,向右的非间断的单元格
工作表.usedrange
条件判断语句
IF……Then……ELSE……ENDIF
适用于简单分支判断、多重嵌套判断
IIF函数(和if函数用法相同)
用的较少,适用于简单结果处理
select case
用于多平行条件判断
循环语句
FOR...NEXT循环
for...each...in...next
do...loop循环
函数使用
引用工作表函数
worksheetFunction.<i>f(x)</i>
vba函数
vba.<i>f(x)</i>
数组
定义
dim arr(1 to 2,1 to 10,…) as ……
redim preserve arr(1 to n)
0 条评论
下一页