EXCEL VBA:使用vba打开XLSM excel

时间:2015-01-08 07:28:17

标签: excel vba excel-vba

我无法弄清楚我的代码中的错误

If cboUnit.Text = "MARINER" Then
Application.ScreenUpdating = False
Application.Workbooks.Open Filename:=ThisWorkbook.Path & "\UNIT" & "\MARINER"
ThisWorkbook.Activate
Workbooks("TOUKEI DATA REPORT GRAPHING").Close
End If

我只想打开文件夹单元上的xlsm文件 但我总是有一个错误:

运行时错误'1004' 得到的文件是'xlsx'扩展名

1 个答案:

答案 0 :(得分:0)

如果你使用这样的东西,它至少应该使调试更简单。然后替换此行提供的代码:

Application.Workbooks.Open Filename:=ThisWorkbook.Path & "\UNIT" & "\MARINER"  

使用其他变量声明变量。我理解你的问题是" Mariner"是文件名。如果不是,则需要更改fileNPath。

Dim path As String, fileNPath As String

'add these two values above your code
path = ActiveWorkbook.path
fileNPath = path & "\UNIT\MARINER.xlsm"

Application.Workbooks.Open fileName:=fileNPath   'Change this line 

完成此操作后,您可以在调试模式下查看文件路径的值,其中您所获得的版本具有一个值,直到无论如何还没有工作的行。所以这样,您可以在尝试使用它之前查看正在发生的事情。

注意:要启用启用宏的工作簿,必须为.xlsm,而不是.xlsx