我們正在更新MS Word加載項,允許用戶將MS Word文件插入到中央MS通過以下功能Word文檔:Microsoft.Office.Interop.Word Selection.InsertFile()方法 - >如何在範圍中使用書籤參數
//Created rng variable
Microsoft.Office.Interop.Word.Range rng = Globals.ThisAddIn.Application.Selection.Range;
//MS Interop method.
Globals.ThisAddIn.Application.Selection.InsertFile(
filename,
rng,//<--Added range
ref missing, //Confirm Conversions
ref falsevalue, //Link file
ref falsevalue //Attachment
);
第二個參數:
ref missing, //Range - For Word can be a bookmark
似乎是說,我們可以通過,可以是一個書籤(我們 可以用它來刪除一個範圍參數添加內容,如果需要的話),但是我們一直無法找到y實現示例,演示如何完成此操作。
MSDN描述這個參數如下:
範圍
類型:System.Object
可選的對象。
如果指定的文件是Word文檔,則該參數引用書籤。如果該文件是另一種類型(例如Microsoft Excel工作表),則此參數引用命名範圍或單元格區域(例如,R1C1:R3C4)。
既然我們要插入一個新的書籤與文本,我們認爲我們需要:
- 創建一個新的書籤,並
- 它傳遞到的insertFile參數列表
然而,在這一點上,由於我們無法找到任何實現這個目標的例子,所以我們處於一個停止點。
我們還發現例子,如這些:
http://www.c-sharpcorner.com/article/add-replace-and-remove-bookmarks-in-word-using-c-sharp/
但它看起來並不像它們的實現使用Word互操作或Selection.InsertFile()。
智能感知似乎並沒有表明對Microsoft.Office.Interop.Word.Bookmark一個Range屬性:
感謝。
我認爲你包含的鏈接是指Microsoft.Office.Tools.Word而不是Microsoft.Office.Interop.Word。我們正在使用Interop。謝謝。 – jazzBox
對不起,鏈接不對。我現在有鏈接到互操作書籤對象。同樣的答案,使用Bookmark.Range。 –
我加了 Microsoft.Office.Interop.Word.Range rng = Globals.ThisAddIn.Application.Selection.Range; (Microsoft.Office.Interop.Word.Bookmark.Range似乎不可用,如上面的屏幕截圖所示。) 然後使用該參數,如我編輯的帖子中所示。 獲取此錯誤: 「類型不匹配(來自HRESULT的異常:0x80020005(DISP_E_TYPEMISMATCH))」 – jazzBox