如何在vba中打开工作簿?

要使用VBA打开工作簿,需要使用“Workbook.Open”方法并指定文件路径(确保指定带有扩展名文件名和类型的工作簿的完整路径)。此方法共有 15 个可选参数,可用于处理不同的文件类型。

在本教程中,我们将详细探讨它并查看您可以使用的替代方法。

使用 VBA 打开工作簿的步骤

  1. 要启动代码,请使用“Workbooks”对象。
  2. 之后键入句点 (.),然后从列表中选择“打开”方法。
  3. 在第一个参数中指定文件路径,并确保将其用双引号引起来。
  4. 最后,运行代码以打开工作簿。
用vba打开工作簿
 Sub vba_open_workbook() Workbooks.Open "C:UsersDellDesktopmyFile.xlsx" End Sub

有用的链接:运行宏宏记录器Visual Basic 编辑器个人宏手册

Workbook.Open 语法

现在是时候看看您刚刚在上面的示例中使用的方法的语法了。正如我提到的,您可以使用 15 个参数:

 expression.Open (FileName, UpdateLinks, _ ReadOnly, Format, Password, WriteResPassword, IgnoreReadOnlyRecommended, Origin, _ Delimiter, Editable, Notify, Converter, AddToMru, Local, CorruptLoad)

您不会使用所有这些参数。但其中一些非常重要,可能对现实世界中的您有用。

打开受密码保护的工作簿

如果要打开受密码保护的工作簿,在这种情况下,可以使用密码参数指定密码。

这里我在桌面上有一个工作簿,其密码为“test123”,现在我想同时打开它并取消保护。这是我需要使用的代码。

 Workbooks.Open "C:UsersDellDesktopmyFile.xlsx", , , Password:="test123"

打开只读工作簿

打开只读工作簿时,您无法对同一工作簿进行更改,但必须保存其副本。

 Workbooks.Open "C:UsersDellDesktopFolder1.xlsx", , True

打开文件夹中的所有工作簿

 Sub vba_open_multiple_workbooks_folder() Dim wb As Workbook Dim strFolder As String Dim strFile As String strFolder = "C:UsersDellDesktopFolder" strFile = Dir(strFolder & "*.xls*") Do While strFile <> "" Set wb = Workbooks.Open(strFolder & strFile) strFile = Dir Loop End Sub

要根据您的要求使用它,请确保更改文件夹路径。

工作簿文件打开对话框

 Sub vba_open_dialog() Dim strFile As String strFile = Application.GetOpenFilename() Workbooks.Open (strFile) End Sub

添加评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注