VBA激活Word但function区未响应并且加载项未加载

我在Windows 8.1上的Office 2013中有一个Excel VBAmacros,提示用户selectWord文档,然后在Excel中使用当前打开的电子表格在Word中驱动邮件合并,并通过激活Word完成,以便用户可以编辑合并的文档。 它的工作原理和我想要的完全一样。

两个问题,虽然:合并的文档现在是活跃在Word中,但a)点击function区选项卡和控件无法识别(即没有任何反应),和b)我的Word启动目录中的加载项不加载。

这两个问题都可以通过快速Alt-Tab到Excel并回到Word来解决。 但是,我怎样才能防止它呢? 这是为有限的知识用户使用,并不得不解释alt选项卡,为什么他们需要这样做不会很漂亮。

Public Sub MergeMarkedPatients() Dim wd As Word.Application Dim doc As Word.Document Dim src As String, tmpl As String, sh As String Dim savepath As String, filename As String tmpl = SelectFile(Array("Bill Templates", "*.doc; *.docx"), gDocumentsDir) If tmpl = "" Then Exit Sub Set wd = New Word.Application wd.Visible = True Set doc = wd.Documents.Open(filename:=tmpl) src = ActiveWorkbook.FullName sh = ActiveWorkbook.Worksheets(1).Name & "$" savepath = wd.ActiveDocument.Path & Application.PathSeparator filename = Replace(GetBasename(wd.ActiveDocument.FullName), "!", "") & " " _ & Left(ActiveWorkbook.Worksheets(1).Name, 9) With doc.MailMerge .OpenDataSource Name:=src, ConfirmConversions:=False, ReadOnly:=False, _ LinkToSource:=True, AddToRecentFiles:=False, PasswordDocument:="", _ PasswordTemplate:="", Revert:=False, Format:=wdOpenFormatAuto, _ Connection:="Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=" _ & src & ";Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:" _ & "System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Engine " _ &"Type=35;Jet OLEDB:Databa", SQLStatement:="SELECT * FROM `" & sh _ & "` WHERE PRINT=""P""", SQLStatement1:="", SubType:=wdMergeSubTypeAccess .Destination = wdSendToNewDocument .MailAsAttachment = False .MailAddressFieldName = "" .MailSubject = "" .SuppressBlankLines = True With .DataSource .FirstRecord = wdDefaultFirstRecord .LastRecord = wdDefaultLastRecord End With .Execute Pause:=True End With doc.Close savechanges:=wdDoNotSaveChanges ProcessMerges wd.ActiveDocument wd.ActiveDocument.BuiltinDocumentProperties(wdPropertyTitle).Value = savepath _ & filename wd.Activate End Sub 

在加载项问题上,我使用自动化启动Excel时遇到同样的问题。 解决方法是循环加载和卸载,然后重新加载应该加载的。 我怀疑Word也是如此。 看到这个答案的代码