- 系统环境:Windows 10
- Excel:2016版本
这个系列集锦一些常用的功能模块,在一些项目中会穿插应用
功能模块中又包括很多子模块,本文涉及的是:文件及文件夹
今天讲讲Excel文件相关的一些操作
Part 1:通用类文件操作
- 判断Excel文件是否存在,If Dir(NewFileAddr) <> "" Then
Dir(文件绝对地址)与空字符串对比,可以判断任何文件是否存在,与文件格式无关
- Dir(CurrentDir & NewFolder, vbDirectory) <> ""增加参数vbDirectory可判断文件夹存在与否
- 删除Excel文件,Kill 绝对地址,这种方式可以删除任何文件
- 新建Excel工作簿,Workbooks.Add
Sub Excel文件操作()
'
CurrentDir = ThisWorkbook.Path & "\"
NewFileName = "测试文件.xlsx"
NewFileAddr = CurrentDir & NewFileName
If Dir(NewFileAddr) <> "" Then
MsgBox "文件重复"
Kill NewFileAddr
End If
Workbooks.Add
ActiveWorkbook.SaveAs Filename:=NewFileAddr, FileFormat _
:=xlOpenXMLWorkbook, CreateBackup:=False
Set wb = ActiveWorkbook
wb.Save
wb.Close
End Sub
- 打开已存在Excel工作簿:Set wb = Workbooks.Open(NewFileAddr)
- 复制Excel文件:FileCopy NewFileAddr, NewFileAddr1
FileCopy 原绝对地址, 新绝对地址,也适用于其它格式文件
- 重命名Excel文件:Name NewFileAddr As NewFileAddr1
Name 原绝对地址 As 新绝对地址,也适用于其它格式文件
- 格式转换Excel文件:例如转换为pdf格式。另存为的所有格式都可以采用VBA实现,具体代码可以使用录制宏功能查看一下
sht3.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"G:\【10】微信\【3】文章\2016.09.18\test2.pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=False
- 批量转换格式:Sheets(Array("测试1", "测试2", "测试3")).Select,利用Array数组批量选择
Sheets(Array("测试1", "测试2", "测试3")).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"G:\【10】微信\【3】文章\2016.09.18\test2.pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
False
以上,为本次的介绍内容,下回见。
本文首发于*Excel高效办公之VBA。排版和细节略作修改,发于头条