目录
- 1 取得VBA对象
- 1.1 取得工作簿对象
- 1.2 取得工作表对象
- 1.3 取得单元格对象
- 1.4 取得对象的属性
- 1.5 文档的方法1
进入vba 界面
方式之一:
快捷键:ALTER+F11
运行方式之一:
进入vba界面,点击绿色三角符号
1 取得VBA对象
1.1 取得工作簿对象
Sub Test()
'把当前工作簿的名称赋值给单元格A1
'testvba.xlsm 只能是当前工作簿的名称
[a1] = Workbooks("testvba.xlsm").Name
'把活动工作簿的名称赋值给单元格A2
[a2] = ActiveWorkbook.Name
'把当前工作簿的名称赋值给单元格A3
[a3] = ThisWorkbook.Name
End Sub
下面是执行结果
1.2 取得工作表对象
默认sheet名称是Sheet1
新建一个sheet,名称是Sheet2
新建一个sheet,并改名称为:testsheet
新建一个sheet,删除掉
新建一个sheet,并改名称为:abc
最终得到下图的结果
'取得上面4个工作表的名称
Sub Test()
'方式1
[a1] = Sheet1.Name
[a2] = Sheet2.Name
[a3] = Sheet3.Name
[a4] = Sheet5.Name
'方式2
[b1] = Sheets(1).Name
[b2] = Sheets(2).Name
[b3] = Sheets(3).Name
[b4] = Sheets(4).Name
'方式3
[c1] = Sheets("Sheet1").Name
[c2] = Sheets("Sheet2").Name
[c3] = Sheets("testsheet").Name
[c4] = Sheets("abc").Name
'方式4 活动工作表的名称
[a5] = ActiveSheet.Name
End Sub
下面是执行结果
1.3 取得单元格对象
'取得单元格对象
Sub Test()
'方式1 单元格A1,赋值文字“方式1”
[a1] = "方式1"
'方式2 3是第3行,1是第1列 单元格A3,赋值文字“方式2”
Cells(3, 1) = "方式2"
'方式3 当前选择的单元格,赋值文字“方式3”
ActiveCell = "方式3"
'方式4 单元格A2,赋值文字“方式4”
Range("a2") = "方式4"
'方式5 选中Excel的D列
Range("d:d").Select
'方式5-1 选中第10行
'Range("10:10").Select
'方式6 选中一个区域e2:g5,填充颜色红色
Range("e2:g5").Interior.ColorIndex = 3
End Sub
选择c14单元格,然后执行代码,下面是执行结果
1.4 取得对象的属性
'取得对象的属性
Sub Test()
'取得所有sheet的数量
[a1] = Sheets.Count
'取得第一个sheet的名称
[a2] = Sheets(1).Name
'取得当前选中的单元格的地址
[a3] = ActiveCell.Address
'取得本excel的文档路径
[a4] = ThisWorkbook.Path
'取得A1单元格的值
[a5] = Range("a1").Value
'选择当前excel的第3个sheet的a1:b10区域,填充颜色为50的颜色
'ThisWorkbook.Sheets(3).Range("a1:b10").Interior.ColorIndex = 50
End Sub
选择单元格A1后,执行代码,下面是执行结果
1.5 文档的方法1
01 新建工作簿
Sub Test()
'新建工作簿
Workbooks.Add
'Workbooks.Add.Name = "test.xlsx" 可以修改新工作簿的名称
'新工作簿的第一个sheet的名称修改为add
ActiveWorkbook.Sheets(1).Name = "add"
'新工作簿的第一个sheet的单元格a3的值修改为abc
ActiveWorkbook.Sheets(1).Cells(3, 1) = "abc"
'添加一个sheet
ActiveWorkbook.Sheets.Add
'新sheet修改名称为add2
ActiveWorkbook.ActiveSheet.Name = "add2"
'第一个sheet作为活动sheet
ActiveWorkbook.Sheets("add").Activate
'关闭新工作簿
ActiveWorkbook.Close
End Sub
执行结果:
02 打开工作簿
Sub Test()
'打开一个工作簿
Workbooks.Open ("D:\Jerry\Documents\工作簿4.xlsx")
'关闭这个打开的工作簿
ActiveWorkbook.Close
End Sub
执行时一闪而过,因为文档被打开后,立马又被关闭了。如果F8,逐行代码运行,则可以看到工作簿被打开。