2016-07-21 88 views
1

我有一個Office Add-in使用JavaScript API for Office 1.1。我正試圖突出顯示Word文檔中的綁定並綁定到Excel文檔中的單元格,以便用戶可以輕鬆識別它們。突出顯示文檔中的綁定

我看到API允許使用setFormatsAsync格式化TableBindings,但我的是Matrix和Text。我不使用Table類型,因爲它添加了一個標題行,總行弄亂了我的邏輯。

有沒有一種方法來格式化或突出顯示綁定?

我更喜歡這是臨時性的 - 類似於當您將鼠標懸停在綁定上方時背景顏色有點變化的方式,但我可以將文本着色然後移除顏色。

回答

1

您在這裏有幾個選項。要使用格式突出顯示,請使用RangeFormat對象修改輪廓,背景或其他屬性。這裏有一個背景填充代碼:

Excel.run(function (ctx) { 
    var myRange = ctx.workbook.bindings.getItem("myBinding").getRange(); 
    myRange.format.fill.color = "FFFF00"; 
    return ctx.sync(); 
}); 

或者,您也可以通過使他們的選擇吸引用戶的注意力轉移到綁定:

Excel.run(function (ctx) { 
    var myRange = ctx.workbook.bindings.getItem("myBinding").getRange(); 
    myRange.select(); 
    return ctx.sync(); 
}); 

最後,如果你希望上述工作的代碼在Excel 2013也可以完成同樣的事情在這個片段:

var myDoc = Office.context.document; 
myDoc.goToByIdAsync("myBinding", Office.GoToType.Binding, function (asyncResult) {}); 

- 邁克爾·桑德斯,爲Office項目經理插件

+0

謝謝你的回答!它適用於CDN,但我的Nuget本地包(Microsoft.Office.js.1.1.0.9)不加載excel-win32-16.00.debug.js。所以,我沒有訪問Excel對象。 –

+0

您使用的是哪個版本的Excel? 2013不支持Excel對象。 –

+0

我在Win 10上使用Office 2016.當我在VS 2015中運行項目時,在解決方案資源管理器/腳本文檔中,我只看到excel-15.01.debug.js和office.debug.js。我不認爲Excel.run函數在那裏。當我搜索它時,它在excel-web-16.00.debug.js和excel-win32-16.00.debug.js中,我看不到加載。 office.debug.js是否應該加載相應的庫? –