gpt4 book ai didi

vba - Excel 中的 MsgBox 焦点

转载 作者:行者123 更新时间:2023-12-02 07:06:13 27 4
gpt4 key购买 nike

我正在 Excel 中使用 VBA 计算大量数据,并希望在完成后显示 MsgBox。 MsgBox 实际上显示了计算所花费的时间。

问题是当用户决定在计算发生时做其他事情时。 Excel 继续计算,完成后,MsgBox 确实显示,但由于某种原因,Excel 没有将焦点赋予 MsgBox。 Excel 图标将在任务栏中闪烁,如果我们单击它,Excel 会最大化,但 MsgBox 位于 Excel 窗口后面,我们永远无法单击它。所以摆脱它的唯一方法是任务杀死 excel.exe...不太好。 Alt+Pause 也不起作用,因为代码只会在当前代码行之后停止,而当前代码行结束...当 MsgBox 关闭时。

我之前尝试过函数 AppActivate("Microsoft Excel") 但没有成功 ( How do I bring focus to a msgbox? )。应用程序名称实际上比该名称更长,因为 Excel 2010 将文档名称添加到窗口标题中。

知道如何解决这个恼人的问题吗?

最佳答案

无论哪个其他应用程序具有焦点,这都将在 Excel 中起作用:

在消息框或任何警告之前放置以下代码:

AppActivate Application.Caption
DoEvents

相信我,这太棒了!

关于vba - Excel 中的 MsgBox 焦点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27301378/

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