使用多个MS应用程序时,如何更改VBA宏中的应用程序焦点



我正在Excel中运行一个宏,该宏使用电子表格表中的值创建并填充Word文档。(每行都会创建一个新文件。(如果Word文件已经存在,则会显示一个MsgBox,询问用户是否要将其保存为其他名称。(如果是,将显示"(Word(文件"对话框。(

问题是,如果用户决定保存文件,焦点将转移到Word,Excel的下一个MsgBox提示将隐藏在Word应用程序后面。因此,除非用户手动切换回Excel,否则他们不会看到MsgBox在等待他们的输入,并且可能会认为应用程序已经停止工作。在显示MsgBox之前,我尝试过激活Excel工作簿,但似乎没有任何效果。我也尝试过检查ActiveWindow和Windows属性,但它们表明工作簿是活动的(也是唯一的(窗口。我该如何执行与单击Excel工作簿类似的程序,将焦点从Word上移开?

问题由Tim Williams回答:"AppActivate应用程序。在Excel中运行标题应该会使Excel处于领先地位Tim Williams";

最新更新