宏打开文件X =>文件X关闭上一个文件,然后文件X打开另一个文件

时间:2015-09-14 14:08:44

标签: excel vba excel-vba

我有一个需要打开文件X的文件Y. 没问题,但事情变得令人毛骨悚然,因为我需要该文件X关闭文件Y然后打开文件Z然后Z文件将关闭X文件。 我必须建立这个桥,因为文件Y和Z是大到同时打开两个。 因此,当我打开文件X时,他运行宏ont hat文件,但宏在打开下一个文件之前停止。 我这样做了:

档案Y

Workbooks.Open Filename:="C:\Users\241410\Desktop\Teste2.xlsb"

档案X

Private Sub Workbook_Open()
Call Macro2
End Sub

Sub Macro2()
    Windows("Teste1.xlsb").Activate
    ActiveWorkbook.Close False
    Workbooks.Open Filename:="C:\Users\241410\Desktop\Teste1.xlsb"
End Sub

文件Z将关闭文件X并运行自身的宏。 代码在ActiveWorkbook.Close之后停止。 为清楚起见,文件Y = Teste1.xlsb,文件X是Teste2.xlsb

2 个答案:

答案 0 :(得分:1)

更改文件X中的代码,如下所示:

Private Sub Workbook_Open()
Call Macro2
End Sub

Sub Macro2()
    Windows("Teste1.xlsb").Activate
    Workbooks(Name of file Y).close false
    Workbooks.Open Filename:="C:\Users\241410\Desktop\Teste1.xlsb"
End Sub

答案 1 :(得分:0)

我认为最好使用另一个不包含数据的工作簿,只需打开和关闭所需的代码。