系统环境:Windows 10
Excel:2010版本
今天讲讲Excel的三个基本对象:工作簿、工作表、单元格
Part 1:引言
- 日常工作中对Excel表格的操作基本会落实到对单元格的操作,那么在VBA中如何定位一个想要操作的单元格,按照这个路径即可:工作簿.工作表.单元格,类似于中国.广东省.广州这样的关系
Part 2:工作簿
定义:工作簿简单来说就是一个个Excel这个*.xlsx文件本身。对工作簿操作一般有三种:
- 当前工作簿
ThisWorkbook
- 新建工作簿
Workbooks.Add
ActiveWorkbook.SaveAs _
Filename:=dirpath2, _
FileFormat :=xlOpenXMLWorkbook, _
CreateBackup:=False
Set wb = ActiveWorkbook
其中空格加下划线 _表示VBA中的续行符,dirpath2为新建工作簿的绝对地址,如dirpath2 = "G:【10】微信【3】文章【3-1】VBA与Exceltest1.xlsx"
- 打开已有工作簿
Set wb = Workbooks.Open(dirpath1)
其中set wb= 表示将新打开或者新建的工作簿赋给wb这个变量,后续对这个工作簿的使用,直接调用这个变量即可
Part 3:工作表
定义:工作表就是打开Excel文件后,如图1所示的"测试","Sheet2"等,可以双击重新命名。获取工作表,一般可以采用两种方法
图1 工作表
- 通过工作表名称
Set sht2 = ThisWorkbook.Worksheets("测试")
对工作表的引用,前面必须有工作簿的标示,如下图中的ThisWorkbook表示当前VBA代码所处的工作簿。对于工作表的名称务必使用英文的引号
- 通过工作表的位置
Set sht1 = ThisWorkbook.Worksheets(3)
实际工作中可能通过鼠标调整各工作表的位置,所以建议使用直接引用工作表的名称来调用工作表,如“测试”,防止出错
Part 4:单元格
定义:单元格就是每个工作表的一个个格子,如图2所示,如A1单元格。单元格通过行和列来定位,行用数字的1,2,3等表示,列号用A,B等来表示。关于单元格的表征一般也有两种方法
图2 单元格
- Range:直接使用行与列的交点即可,如Range("A1"),也可以Range("A" & 3)这样使用
- Cells:需要将列号也转换成数字,如Cells(1, 2),其中2对应的列号就是“B”列,所以也可以这样使用Cells(1,"B")
Set sht3 = ThisWorkbook.Worksheets("测试")
sht3.Range("A1") = 7
sht3.Cells(1, 2) = 8
以上,为本次的介绍内容,下回见。
本文首发于微信公众号:Excel高效办公之VBA。排版和细节略作修改,发于头条