首页 > 解决方案 > Word 在 Excel 的 VBA 控制下不断出错

问题描述

我有一个脚本,它从 Excel 中获取表格,然后将电子表格复制然后粘贴到 Word 中,这在大多数情况下都可以正常工作,但是,有时它会出现以下错误:

运行时错误“4605”:

此方法或属性不可用,因为剪贴板为空或无效

或此错误,但发生频率较低

运行时错误“4198”:

对象“选择”的方法“PasteSpecial”失败

问题是,如果我遇到任何这些错误,我可以再运行几次宏,它会按预期工作。我认为正在发生的是 VBA 忘记或丢失了内存中的 word 文档。

是什么导致了这个和/或这个问题有解决办法吗?

代码示例:

Sub TEST()

Dim WordApp As Word.Application
Set WordApp = New Word.Application
Dim n As Integer
n = 0

WordApp.Documents.Add
WordApp.Visible = True

Do Until n = 50
    n = n + 1
    Range("A1:C6").Select
    Range("C6").Activate
    Selection.Copy
    WordApp.Selection.TypeParagraph
    WordApp.Selection.PasteSpecial Link:=False, DataType:=wdPasteEnhancedMetafile, Placement:=wdInLine2, DisplayAsIcon:=False
Loop

WordApp.Quit 0
    
End Sub

您需要激活 Microsoft Word 16.0 对象库(此宏在 Excel VBA 上运行)

标签: excelvbams-word

解决方案


推荐阅读