1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Excel-VBA 快速上手(五 工作簿对象 Excel 文件的常用操作)

Excel-VBA 快速上手(五 工作簿对象 Excel 文件的常用操作)

时间:2021-02-12 04:55:05

相关推荐

Excel-VBA 快速上手(五 工作簿对象 Excel 文件的常用操作)

文章目录

一、工作簿对象1.1 获取 Excel 文件对应的工作簿对象 二、工作簿对象操作 Excel 的常见用法2.1. 新建并打开 Excel 文件2.2. 关闭 Excel 文件2.3. 保存 Excel 文件2.4. Excel 文件另存为 三、Excel 文件其他常见操作3.1. 判断 Excel 是否存在3.2. 判断 Excel 是否打开3.3. 复制 Excel 文件3.4. 删除 Excel 文件

一、工作簿对象

工作簿指的是 Excel 文件,vba 提供了专门操作 Excel 文件的对象Workbook,既工作簿对象,通过该对象,我们

可以获取到 Excel 文件的信息,以及可以对 Excel 文件进行处理,如:新建、保存、删除、复制等

1.1 获取 Excel 文件对应的工作簿对象

根据场景不同,获取工作簿对象的方式也不相同,本文列举几个常见的获取工作簿对象的方式

1. 通过 Excel 的打开顺序,获取工作簿对象

通过 Excel 的打开顺序,获取 Excel 文件对应的工作簿对象,顺序从 1 开始累计,比如先打开 a.xls 又打开 b.xls,

那么 a.xls 的顺序就是1,b.xls 的顺序就是 2,核心语法:Workbooks(N)

Public Sub main()Dim wb As WorkbookSet wb = Workbooks(1)Debug.Print wb.NameEnd Sub

2. 通过已打开的 Excel 文件的文件名,获取工作簿对象

通过已打开的 Excel 文件的文件名,获取 Excel 文件对应的工作簿对象,核心语法:Workbooks(Name)

Public Sub main()Dim wb As WorkbookSet wb = Workbooks("学习VBA")Debug.Print wb.NameEnd Sub

3. 获取正处于激活状态的 Excel 文件的工作簿对象

获取正处于激活状态的 Excel 文件的工作簿对象,核心语法:ActiveWorkbook,激活状态可以简单理解为,当有

多个 Excel 文件打开时,目前正处于显示的那个 Excel 文件即为激活状态

Public Sub main()Dim wb As WorkbookSet wb = ActiveWorkbookDebug.Print wb.NameEnd Sub

4. 获取正在执行代码的工作簿对象

获取正在运行代码的 Excel 文件所对应的工作簿对象,核心语法:ThisWorkbook,如果当前是 a.xls 在执行 vba 代

码,那么ThisWorkbook返回的就是 a.xls 对应的工作簿对象

Public Sub main()Dim wb As WorkbookSet wb = ThisWorkbookDebug.Print wb.NameEnd Sub

5. 打开 Excel 文件并获取其对应的工作簿对象

打开 Excel 文件并获取其对应的工作簿对象,核心语法:Workbooks.Open(文件路径)

Public Sub main()Dim wb As WorkbookSet wb = Workbooks.Open("C:\Users\Administrator\Desktop\测试.xls")End Sub

二、工作簿对象操作 Excel 的常见用法

2.1. 新建并打开 Excel 文件

Public Sub main()'创建Excel文件Dim wb As WorkbookSet wb = Workbooks.Addwb.SaveAs "C:\Users\Administrator\Desktop\新创建的Excel文件.xls"'给新创建的Excel文件的第一个sheet的第一个单元格添加内容wb.Sheets("sheet1").Range("a1") = "这是新创建的Excel文件"End Sub

2.2. 关闭 Excel 文件

代码中第 6 行的wb.Close True是关闭并保存的意思,如果仅关闭不保存就写False就可以

Public Sub main()'打开Excel文件Dim wb As WorkbookSet wb = Workbooks.Open("C:\Users\Administrator\Desktop\测试.xls")'关闭Excel文件wb.Close TrueEnd Sub

2.3. 保存 Excel 文件

Public Sub main()'打开Excel文件Dim wb As WorkbookSet wb = Workbooks.Open("C:\Users\Administrator\Desktop\测试.xls")'保存Excel文件wb.SaveEnd Sub

2.4. Excel 文件另存为

Public Sub main()'打开Excel文件Dim wb As WorkbookSet wb = Workbooks.Open("C:\Users\Administrator\Desktop\测试.xls")'将Excel文件另存为wb.SaveCopyAs "C:\Users\Administrator\Desktop\测试2.xls"End Sub

三、Excel 文件其他常见操作

3.1. 判断 Excel 是否存在

Public Sub main()If Len(Dir("C:\Users\Administrator\Desktop\测试2.xls")) = 0 ThenDebug.Print "文件不存在!"ElseDebug.Print "文件存在!"End IfEnd Sub

3.2. 判断 Excel 是否打开

主要是通过循环所有打开的 Excel 窗口来进行名称匹配

Public Sub main()Dim index As IntegerFor index = 1 To Windows.CountIf Windows(index).Caption = "测试2.xls" ThenDebug.Print "文件已被打开!"Exit ForEnd IfNext indexEnd Sub

3.3. 复制 Excel 文件

FileCopy的第一个参数是源文件路径,第二个参数是复制后的目标路径

Public Sub main()FileCopy "C:\Users\Administrator\Desktop\测试.xls", "C:\Users\Administrator\Desktop\测试-复制后.xls"End Sub

3.4. 删除 Excel 文件

Public Sub main()Kill "C:\Users\Administrator\Desktop\测试-复制后.xls"End Sub

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。