C# Word操作

改了2天word根據書籤自動替換的東西,頭暈眼花。。。

總結一下遇到的幾個問題
1.根據書籤自動替換後原來的書籤消失了
解決辦法:
根據書籤替換後,再重新在這個位置加上書籤

foreach (Word2007.Bookmark bm in oDoc.Bookmarks){
	string bmName = bm.Name;
	Range r = bm.Range;//得到書籤的位置
	bm.Range.Text = "替換的內容";//將內容替換
	document.Bookmarks.Add(bmName, r);//將書籤重新加上
}

2.按照以上方法添加書籤後,發現書籤所在的區域有變化,導致再一次根據書籤生成文本的文檔無法再次根據書籤完成替換
解決辦法:

foreach (Word2007.Bookmark bm in oDoc.Bookmarks){
	string bmName = bm.Name;
	Range r = bm.Range;//得到書籤的位置
	bm.Range.Text = "替換的內容";//將內容替換
	r.SetRange(r.Start, r.End + "替換的內容".Length);//添加書籤的範圍
	document.Bookmarks.Add(bmName, r);//將書籤和書籤範圍重新加上
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章