VBA按钮复制表到Word文档问题

时间:2017-03-17 16:11:14

标签: excel vba excel-vba ms-word

下面的代码从工作簿中复制工作表并将其粘贴到新的Word文档中。我唯一的问题是Word文档打开并复制信息,但它保留在底部任务栏上并且实际上并没有在屏幕上打开页面(如果这有意义)。有人可以告诉我我错过了什么吗?什么都有帮助,谢谢。

Sub btnExport()
Dim objWord As Word.Application
Range("C2:D60").Copy
Set objWord = CreateObject("Word.Application.14")
With objWord
    .Documents.Add
    .Visible = True
    .Selection.Paste
    .ActiveDocument.Tables(1).AutoFitBehavior 2 'wdAutoFitWindow
End With
End Sub

1 个答案:

答案 0 :(得分:2)

End Sub之前,请执行此操作:

objWord.Activate

应用程序启动时就像在任务栏中一样,为了让用户专注,它需要激活它。或者,您也可以使用AppActivate语句,但这需要知道刚刚添加的文档的名称。为此,我为doc方法的返回分配了另一个变量Documents.Add,然后我们可以执行AppActivate doc.Name

Sub btnExport()
Dim objWord As Word.Application
Dim doc as Word.Document
Range("C2:D60").Copy
Set objWord = CreateObject("Word.Application.14")
With objWord
    Set doc = .Documents.Add
    .Visible = True
    .Selection.Paste
    .ActiveDocument.Tables(1).AutoFitBehavior 2 'wdAutoFitWindow
End With
AppActivate doc.Name
End Sub