2009-10-06 63 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}'。但是,運行合併後,它不會顯示客戶端名稱的大寫。你可以幫我嗎?謝謝。 –

相關問題