excel - 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 上运行)
解决方案
推荐阅读
- python - 如何将我自己的模块添加到 dask worker env 以避免没有命名的模块
- typescript - 如何实现类型安全的泛型设置器
- c# - 格式化列表中的值
- python - 从整数获取 Cassandra python 驱动程序中的 murmur3 哈希
- php - redirect()->back() laravel 重定向到根网站
- python - 在 google colab 中安装 LibFMP 包
- algorithm - 有没有特定的算法或方法来解决这个特殊的树问题?
- javascript - 尝试在 React 应用程序中显示 Twitter 关注者的数量
- node.js - 点击表单上的提交按钮后没有任何反应
- flask-sqlalchemy - 如何为 GeoJson 创建 Marshmallow SQL 模式