如何将文本放在剪贴板中,以便它作为表粘贴到Word中?

时间:2008-11-17 22:37:09

标签: ms-word ms-office word-vba clipboard

在MS Office中使用VBA,如何将文本添加到Windows剪贴板以便将其作为表格粘贴到Word中?

5 个答案:

答案 0 :(得分:7)

Windows剪贴板支持多种格式。当您想要将东西放在剪贴板中时,您需要对RegisterClipboardFormat()进行一次或多次调用,告诉它您将放置在剪贴板上的对象的格式,然后调用SetClipboardData(),它实际上将数据放入剪贴板

如果您希望能够将表格粘贴到Word中,那么HTML是最简单的格式。只需将HTML表格复制到剪贴板上,它就会正确粘贴到Word中,前提是您首先将剪贴板数据注册为HTML对象。

我会给你一些代码,但最简单的方法是在MSDN上引用一个例子:

How to add HTML code to the clipboard using Visual Basic

此页面甚至显示了将HTML表复制到剪贴板的示例。

答案 1 :(得分:4)

Kluge的回答是正确的,但MSDN上这篇不同的文章有更好的代码,更容易重复使用:http://blogs.msdn.com/jmstall/archive/2007/01/21/html-clipboard.aspx

答案 2 :(得分:0)

您是否尝试将其格式化为HTML表格?

答案 3 :(得分:0)

自从我完成任何Windows编程以来已经有一段时间了,但我似乎记得你注册了对象的格式。实际上,您可以注册多个不同格式的对象,并且粘贴应用程序可以在它们之间进行选择(例如使用Word的Paste Special选项)。

我会尝试创建一个Word表格对象,用你的数据填充它的单元格,然后将其复制到剪贴板上。

答案 4 :(得分:0)

剪贴板很棒...但是使用它来保存程序的输出以粘贴到Word中似乎有点粗略。你试图做的是什么,你可能应该做其他方式?