我正在尝试使用下面的代码打开另一个工作簿
Sheets("Range").Activate
Range("A1").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Workbooks.Open ("AvgStdev.xlsm")
Run Code Online (Sandbox Code Playgroud)
以前也能用,现在excel提示找不到文件。请帮忙 :/
如果您按照此处讨论的方式声明变量,您可以轻松地做您想做的事。
因此,如果我们要应用它,您可以像这样打开您的工作簿:
Dim wb As Workbook
Dim myfilename As String
myfilename = "C:\Users\Ayaz\Desktop\Analysis\AvgStdev.xlsm"
'~~> open the workbook and pass it to workbook object variable
Set wb = Workbooks.Open(myfilename)
'~~> More codes here
Run Code Online (Sandbox Code Playgroud)
现在,如果您要保存相同的文件,请稍后在您的代码中:
wb.Save '~~> save
wb.Close '~~> close
Run Code Online (Sandbox Code Playgroud)
或者你可以只使用Close方法来做到这一点:
wb.Close True '~~> explicit SaveChanges argument to true
Run Code Online (Sandbox Code Playgroud)
现在,如果您想将其另存为另一个文件:
Dim newfilename As String
newfilename = "C:\Users\Ayaz\Desktop\Analysis\Another.xlsm"
'~~> If you are saving it in a format other than .xlsx,
'~~> you have to be explicit in the FileFormat argument
wb.SaveAs newfilename, xlOpenXMLWorkbookMacroEnabled
wb.Close
Run Code Online (Sandbox Code Playgroud)
哈。