【发布时间】:2014-02-27 10:56:24
【问题描述】:
总体目标是在 Excel 中采用 RTF 格式的文本并将其转换为 HTML。到目前为止,我一直无法让 Excel 以合理的方式做出响应,因此尝试使用 Word。我能够毫无问题地在 Word 中进行转换,因此希望通过将单元格复制到 Excel 中,粘贴到 Word 中,然后运行代码将格式转换为我想要的方式来自动化该过程。
我遇到了一个问题,当我从 Excel VBA 粘贴到 Word 时,粘贴成功,但随后跳转到 End Sub。
Sub webtext(r As String)
Range(r).Copy
Dim wordApp As Word.Application
Dim wordDoc As Word.Document
Set wordApp = CreateObject("word.Application")
Set wordDoc = wordApp.Documents.Add
wordApp.Visible = True
wordApp.Activate
wordApp.Selection.PasteSpecial
'Any code here is missed out
z = MsgBox("tada") 'this will never trigger
x=5 'this will never set
With wordDoc
'Operations on the text pasted would happen here
'but vba never gets here.
End With
'Code jumps to here
End Sub
我尝试过同时使用 wordDoc 和 wordApp,以及 paste 和 pastespecial,但结果总是相同。
有没有人知道这里发生了什么或如何阻止它总是在粘贴后结束。
编辑:我已经对此进行了测试,它适用于 Office 2010。它不适用于 Office 2013。
【问题讨论】:
-
您在 Excel 中运行
webtext,对吗?当代码跳转到End Sub时,你的任务完成了吗?我不得不承认我在这里很难理解你的问题 -
我添加了几个“测试”点来说明问题发生在哪里以及由此产生的后果(即:粘贴后我无法再运行任何代码)。粘贴本身是成功的。
标签: excel ms-word office-2013 vba