您的位置:首页 > 财经 > 产业 > VBA中打开、保存关闭Excel工作簿的方法

VBA中打开、保存关闭Excel工作簿的方法

2025/2/25 10:25:44 来源:https://blog.csdn.net/hotkoko/article/details/140206941  浏览:    关键词:VBA中打开、保存关闭Excel工作簿的方法

前言

本节会介绍使用VBA方法打开Excel工作簿、保存关闭Excel工作簿的方法,分别会用到Open、Save、Close方法的使用。


1.使用Open方法打开工作簿

Workbooks.Open(FileName,UpdateLinks,ReadOnly,Format,Password,WriteResPassword,Ignore-ReadOnlyResommended,Origin,Delimiter,Editable,Notify,Converter,AddToMru,Local,Corrupt-Load)
虽参数较多,但只有FileName为必填参数,表示需要打开的工作簿文件名,关于参数说明请参考下表:

参数说明
FileName需要打开的工作簿的文件名,需要文件的绝对路径
UpdateLinks指定工作簿中的外部引用(链接)的更新方式。可取的值为0或3,分别表示打开工作簿时不更新外部引用、打开工作簿时更新外部引用
ReadOnly为True时表示以只读方式打开工作簿
Format当打开文本文件时,用该参数指定分隔符。可取的值有1(制表符)、2(逗号)、3(空格)、4(分号)、5(无)、6(自定义字符,由Delimiter参数进行指定)
Password如果要打开的工作簿设置了打开密码,用该参数给出密码。如果设置了密码但没有填该参数,则会弹出对话框提示用户输入密码
WriteResPassword如果要打开的工作簿设置了保护结构的密码,用该参数给出对应密码
IgnoreReadOnlyRecommended为True时表示不显示只读建议的信息
Origin当打开文本文件时,用该参数指示该文件来源于何种操作系统,以正确处理代码页和回车/换行符。可取的值为常量xlMacintosh、xlWindows、xlMSDOS。
Delimiter当打开文本文件时,如果Format参数设置为6,则用该参数指定作为分隔符的字符,如果设置多个字符,则会默认只取第一个字符
Editable如果要打开的文件为Excel 4.0加载宏,则当该参数的值为True时,该加载宏为可见窗口;如果为False或忽略该参数,则加载宏以隐藏方式打开,且无法设为可见;该参数不能用于5.0及以上的版本。
Notify当要打开的文件不能以可读写的模式打开时,如果该参数的值为True,则可将该文件添加到文件通知列表。Excel将以只读模式打开该文件并轮询文件通知列表,当该文件可用时会通知用户。如果该参数的值为False或省略时,则不请求任何通知,并且不能打开任何不可用的文件
Converter打开文件时首先尝试使用的文件转换器的索引号。如果指定的文件转换器无法识别该文件,在尝试使用其他转换器。
AddToMru如果该参数的值为True,则将该工作不添加到最近使用的文件列表中。默认为False
Local如果该参数的值为True,则以Excel(包括控制面板设置)的语言保存文件,默认为False,则以VBA的语言保存文件。
CorruptLoad可取的值为常量xlNormalLoad、xlRepairFile、xlExtractData,分别表示正常打开工作簿、尝试修复工作簿、尝试恢复工作簿中的数据。默认为xlNormalLoad
示例1:打开一个Excel工作簿
Sub OpenExcelFile()Dim strFileName As String' 定义文件名称strFileName = "D:\VBA\Employee.xlsx"' 打开工作簿Workbooks.Open Filename:=strFileNameEnd Sub
示例2:打开当前路径下的Excel工作簿
Sub OpenExcelFile()Dim strFileName As StringDim strFilePath' 定义文件名称strFileName = "Employee.xlsx"' 获取当前路径strFilePath = ThisWorkbook.Path' 打开工作簿Workbooks.Open Filename:=strFilePath & "\" & strFileNameEnd Sub

2.保存关闭文件

当打开一个Excel工作簿,并对其内容进行操作后,想要保存并关闭时,可以使用Save以及Close方法。

示例:打开当前路径下的Employee.xlsx文件后,在Sheet1的A1单元格写入当前日期后,保存并关闭Employee.xlsx文件,完整的代码如下:
Sub WriteCurrentDate()' 申明变量Dim strFileName As StringDim strFilePathDim ws As WorksheetDim wb As Workbook' 定义文件名称strFileName = "Employee.xlsx"' 获取当前路径strFilePath = ThisWorkbook.Path' 打开工作簿Workbooks.Open Filename:=strFilePath & "\" & strFileName' 定义sheet1工作表对象以及当前打开的工作簿对象Set ws = ActiveWorkbook.Worksheets("Sheet1")Set wb = ActiveWorkbook' A1单元格写入当前日期ws.Range("A1").Value = Date' 保存并关闭文件wb.Savewb.CloseEnd Sub

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com