首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >奇怪的VBA (错误?)-除非添加Messagebox,否则复制粘贴循环崩溃

奇怪的VBA (错误?)-除非添加Messagebox,否则复制粘贴循环崩溃
EN

Stack Overflow用户
提问于 2015-12-17 22:53:26
回答 1查看 110关注 0票数 0

我有一个关于VBA的奇怪的问题。我设计了一个潜水器来创建一份文字报告。我基本上有10个变量,一个带有模板图表的word模板文档,以及每个变量的三个带有数据的CSV文件。我循环遍历所有变量,对于每个变量,我创建页面,访问chartdata工作簿,并将外部CSV数据复制到chartdata工作簿中。

代码语言:javascript
复制
Sub createRep()

  'open Word-template

  for page=1 to 10

    'Open external csv
    'Open chartdata workbook
    'Copy external data into chartdata workbook
    'Close external csv files and chartdata workbook

  Next page

End Sub

它可以在一开始工作,但在某个页面,我会得到一个错误,因为粘贴不起作用。我也不能手动将任何内容复制到chartdata工作簿中,它似乎崩溃了,这就是粘贴失败的原因。但是,以下代码将起作用:

代码语言:javascript
复制
Sub createRep()

  'open Word-template

  for page=1 to 10

    MsgBox page

    'Open external csv
    'Open chartdata workbook
    'Copy external data into chartdata workbook
    'Close external csv files and chartdata workbook

  Next page

End Sub

这就是消息框以某种方式修复它。但是为什么呢?

EN

回答 1

Stack Overflow用户

发布于 2015-12-17 23:24:21

这可能是因为您的代码在Word打开之前运行。当文档试图加载时,您在应用程序准备就绪之前已经在访问它了。你可以尝试的解决方法是添加DoEvents,或者如果这还不够,可以使用对WordApplication的引用:

代码语言:javascript
复制
While WordApplication.Busy = True
      DoEvents
Wend

希望这能有所帮助

-JDB

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34337527

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档