从Excel中插入VBA到Word中

  1. 我有一个电子表格,可以生成一个word文档,对其进行格式化,然后根据所选内容和input到电子表格中的内容,向文档中添加一大堆文本。 所有这一切都很好。
  2. 我想要做的是以某种方式插入VBA代码到Word文档在Excel中生成时。

这里是我试图插入的具体代码 – 最终这需要进入Word VBA:

 Private Sub Document_Close() ActiveDocument.Saved = True End Sub 

我似乎无法让Excel将此代码插入到正在生成的Word文档中。 我知道这是可能的,但无法弄清楚。 我尝试了几件事情,它接受我的代码,但我不知道它在哪里插入,因为当我寻找插入的行我找不到它们。

这里是我用来生成Word documen的代码。 有人可以请看看,让我知道如何将上述代码插入此文档? 谢谢你提供的所有帮助。

 Set wrdApp = CreateObject("Word.Application") Set wrdDoc = wrdApp.Documents.Add With wrdApp.Selection 'A bunch of formatting code and text inputting is listed here for the word document. End With wrdApp.Visible = True wrdApp.Activate 

如果您已经设置Word来信任对VBA项目的编程访问,那么:

 Sub ExceltoWord() Dim strIn As String strIn = "Private Sub Document_Close()" & Chr(10) & " ActiveDocument.Saved = True" & Chr(10) & "End Sub" Set wrdApp = CreateObject("Word.Application") Set wrddoc = wrdApp.Documents.Add wrddoc.VBProject.VBComponents("ThisDocument").CodeModule.AddFromString strIn wrdApp.Visible = True wrdApp.Activate End Sub 

在这里输入图像说明

如果要插入到Word中的代码是恒定的(可能应该是这样),则可以手动创build一个已包含代码的Word文件,然后将该文件用作模板,而不是从完全空白的Word文档开始。