2017-03-11 54 views
0

我正在使用Office加載項平臺開發Excel的加載項。在這個加載項中,我使用setSelectedDataAsync **函數將數據寫入一個範圍。它工作正常,但數據寫入後,我不能刪除或編輯單元格(儘管我可以選擇新的範圍),除非我單擊工作表外的任何地方或雙擊單元格。我認爲這是Excel無法正確恢復焦點的問題(應用程序頂部的文件名保持灰顯)。無法在Excel中的setSelectedDataAsync之後編輯單元格

有些用戶似乎認爲Excel變得無響應,這是一個問題。

這是一個已知的問題?有沒有解決這個問題的方法?

**我注意到,setSelectedDataAsync比設置range.values到矩陣然後ctx.sync()更快。我是否因不使用後一種方法而失去一些重要的功能?

+0

我知道你問一個更廣泛的行爲問題,但提供示例代碼很有幫助,特別是最小的,完整的,可驗證的示例(http://stackoverflow.com/help/mcve) –

回答

1

這不是已知問題(設置數據後無法與工作表交互)。我們可以研究這一點。

驚訝聽到setSelectedDataAsync作品比範圍更快。 values設置。批處理語法允許您結合不僅一條指令,而且還可以結合許多相關指令(例如設置數字格式,字體,背景等),並且可以執行一次同步()以一次批量發送所有指令。因此,將相關說明組合在一起時效率更高。

對於使用哪種API沒有限制;然而,Excel1.1版本是隨Office 2016一起引入的,然後自那之後不斷增加新功能以來,已經有了許多版本。

setSelectedDataAsync() API被設計在主機之間,如Excel,Word等工作,因此不會去深入在-方面設立數字格式,格式等

+0

我發現了嘗試構建示例的原因。作爲外接程序的一部分,我在任務窗格中嵌入了一個Iframe,每次從功能區調用該命令時都會加載Iframe,並從Excel中獲取焦點。我將函數移到了一個單獨的函數文件中,現在它按預期工作。 關於setSelectedDataAsync工作比.values設置更快,我的意思是隻有一個大矩陣的寫操作,我目前沒有批處理指令。 非常感謝您的時間,並對原始問題感到抱歉。問候! –

相關問題