需要将xls文件保存为xlsx,closures然后重新打开它
我发送了一个.xls文件来处理我的macros。 .xls文件的问题是,他们无法处理我需要运行我的macros的行数。 所以,为了解决这个问题,我试图首先保存我作为.xlsx文件发送的文件,然后按照计划继续使用macros。 不幸的是,一旦我达到APPSInvoiceWB = Workbooks.Open(APPSInvoiceFN & "x")
我得到一个错误:所需的对象。 我的代码有什么问题? 我是否正在采取最好的方法来解决我的.xls问题?
MsgBox "Please select APPS Invoice file" APPSInvoiceFN = Application.GetOpenFilename' If APPSInvoiceFN = False Then ' User Pressed Cancel MsgBox "APPS Invoice file not selected. APPS invoice will not be updated." Application.ScreenUpdating = True Exit Sub Else On Error GoTo ErrHandler Set APPSInvoiceWB = Workbooks.Open(APPSInvoiceFN) On Error GoTo 0 APPSInvoiceWB.SaveAs FileFormat:=51 APPSInvoiceWB.Close savechanges:=True APPSInvoiceWB = Workbooks.Open(APPSInvoiceFN & "x")
您在最后一行忘了Set
关键字:
Set APPSInvoiceWB = Workbooks.Open(APPSInvoiceFN & "x")
至于方法去…这种方法一般应该很好地转换格式。
尝试
APPSInvoiceWB.SaveAs FileName:= APPSInvoiceFN & "x", FileFormat:=51
我不知道,因为你已经张贴部分代码,你宣布APPSInvoiceWB
作为工作簿。
Dim APPSInvoiceWB as Workbook
并更改此部分APPSInvoiceWB = Workbooks.Open(APPSInvoiceFN & "x")
来set APPSInvoiceWB = Workbooks.Open(APPSInvoiceFN & "x")
你缺lessSet
,所以错误。
另外,请按照Tim的build议进行更改