gpt4 book ai didi

excel - Excel 2016 中的 Workbook_Open() 未触发

转载 作者:行者123 更新时间:2023-12-04 19:51:23 25 4
gpt4 key购买 nike

Excel 2016(或 365)似乎无法可靠地或更准确地触发 Workbook_Open() 子,根本没有!简单的事件子

Private Sub Workbook_Open()
MsgBox "Work book is open"
End Sub

好像不行。但是,如果工作簿已经打开,然后打开包含上述 Sub 的工作簿,它会按预期运行。我注意到与 Excel 2010 不同,2016 (365) 在其自己的窗口中打开每个工作簿,而不是在 Excel 应用程序窗口中打开工作簿窗口。这是 2016 年的错误吗?有解决方法吗?

我已经为我自己的应用程序制作了一个解决方法,那就是调用工作表的激活并从那里调用我的初始化例程。但是有点“粗糙”,最好让 Workbook_Open() sub 正常工作。

它是 ThisWorkbook 模块中的一个简单的单个 Sub。启用宏。在 Excel 2010 中,它工作得很好,就像我为其编写宏的其他工作簿中的其他两个宏一样。这只是 Excel 2016 的一件事。鉴于 Workbook_Open() sub 是工作簿的网关,我们必须找到解决方法才能使其正常工作似乎有点奇怪。

最佳答案

尝试使用新的 Excel 实例封装调用。示例如下:

     Sub OpenInNewExcel()

Dim Background_Excel As Excel.Application
Dim pathName As String
Dim fileName As String

Let pathName = "Enter your path here" 'include "\" at the end
Let fileName = "Enter your file name here"

Background_Excel.Workbooks.Open fileName:=pathName & fileName



Background_Excel.Parent.Quit ' This is how you close the file completely using VBA otherwise the file will close and the Excel Shell will remain.


End Sub

还要确保在选项-信任中心中启用宏。

关于excel - Excel 2016 中的 Workbook_Open() 未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45091246/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com