Word Automation:无需通过剪贴板即可编写RTF文本

时间:2008-08-22 13:24:25

标签: automation ms-word word-vba

我正在尝试通过存储在变量中的某些 RTF字符串

替换Word(2003/2007)中的当前选择

以下是当前代码:

Clipboard.SetText(strRTFString, TextDataFormat.Rtf)
oWord.ActiveDocument.ActiveWindow.Selection.PasteAndFormat(0)

有没有办法在不经过剪贴板的情况下做同样的事情。或者有没有办法将剪贴板数据推送到安全的地方并在之后恢复?

2 个答案:

答案 0 :(得分:14)

将RTF放在文件而不是剪贴板中,然后从文件中插入,例如

  

Selection.InsertFile FileName:="myfile.rtf", Range :="", _ ConfirmConversions:=False, Link:=False, Attachment:=False

答案 1 :(得分:-3)

您可以使用RichTextbox将RTF转换为文本,反之亦然。

RichTextBox r = new RichTextBox();
r.Rtf = strRTFString;
Console.WriteLine(r.Text);