2009-10-06 41 views
3

我一直在试图创建一个库来替换Word 2003文档上的MergeFields,一切正常,除了在替换它时丢失应用于该字段的样式,有没有办法保留它?在Word 2003文档中替换MergeField并保留样式

这是我使用替换域代码:我使用的选择CopyFormat和PasteFormat方法,也使用get_style和set_style但没有exent试图

回答

6

而不是使用过的TypeText您的选择顶部使用领域的Result属性的:

  if (values.ContainsKey(fieldName)) 
      { 
      mergeField.Result = (values[fieldName]); 
      } 

这将确保在该领域的任何格式将被保留。

+3

嗨 这帮了很多!谢谢。 虽然,正确的格式是: mergeField.Result.Text =(values [fieldName])。 因为结果的类型是“范围”。 非常感谢 – willvv

+0

是的,f.Result.Text,绝对如你所说。 – hawbsl

+0

虽然有效,但结果并不如预期。我的代码是'{MERGEFIELD ClientName * Upper}'。但是,运行合并后,它不会显示客户端名称的大写。你可以帮我吗?谢谢。 –

相关问题