如何从ms项目中关闭excel工作簿? (VBA)

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

我正在尝试在 MS 项目上创建一个小宏。 它只会关闭已经在 Excel 中打开的工作簿。 理想情况下,我想关闭一个特定的 excel 工作簿,但即使只是能够从 MS 项目关闭 excel 我也会感到满意。

很容易找到如何关闭我在 MS 项目宏中创建/打开的工作簿,但我找不到关闭不是在我的宏中创建的打开工作簿的方法。

非常感谢您的帮助。 🙂

我尝试再次打开 MS 项目的工作簿来激活它,但 vba 说无法打开它,因为它已经打开了。

我也尝试过使用 Application.SendKeys("%{TAB}") 但是ms项目vba返回错误438“对象不支持此方法”

vba ms-project
1个回答
0
投票

因此,根据 @Rachel Hettinger 的建议,我成功地完成了一个功能来关闭 MS 项目中的一个特定 Excel 工作簿。

重要: 这适用于 MS 项目,但我不确定它是否适用于任何其他办公应用程序。 (绝对不是在Excel上,在Excel上会更简单)

Function CloseWorkbook(WorkbookToClose As String)

    'the name of the file you want to close (the variable WorkbookToClose above)
    'must contain the name of the file and the extension
    Dim xlapp As Object
    Set xlapp = GetObject(, "Excel.Application")

    Dim wb As Object
    For Each wb In xlapp.Workbooks
        If wb.Name = WorkbookToClose Then
            wb.Close False
        End If
    Next wb

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