从Word中退出Excel工作簿使Excel保持打开状态

问题描述 投票:0回答:2

我在Word中有一个宏,它正在从Excel文件中读取数据。我的宏中有以下几行可打开和关闭Excel文件:

Excel_path = "C:\Users\....\Documents\myExcelfile.xlsx"
Dim myExcel As Object
Dim myWB As Object
Set myExcel = CreateObject("Excel.Application")
Set myWB = myExcel.Workbooks.Open(Excel_path)
With myWB.Sheets(2)
    *.... Reading in data ....*
End With

myWB.Close savechanges:=False
myExcel.Quit
End Sub

尽管我同时关闭了工作簿并退出了应用程序,但在成功在Word中运行宏后,仍然收到消息,我的Excel文件已被锁定以进行编辑。另外,如果我关闭Word应用程序,则继续保持此状态。我签入了Excel工作簿,但未显示任何连接。如何真正退出Excel工作簿?

vba ms-word excel-2010
2个回答
1
投票

不关闭工作簿,而是执行:

myWB.Saved = True
myExcel.Quit

代替设置。保存也可以设置

myWB.DisplayAlerts = False

0
投票

我建议您这样做:

Application.Quit

例如:

Workbooks("WB.XLSM").Close SaveChanges:=False

With myExcel.Application
    .DisplayAlerts = False
    .Quit
End With

并且如果该Excel流程之后仍存在于您的流程管理器中,则使用kill杀死excel流程。您可以找到an example there

© www.soinside.com 2019 - 2024. All rights reserved.