我想创建一个函数来选择工作簿中的范围并在屏幕上显示该范围。我的测试显示select()
确实选择了一个范围,而它并不总是自动调整屏幕以显示选择。
例如,我尝试通过以下代码在Z10:Z10
下选择并显示Excel for Windows
。但在选择之后,屏幕不会移动:
Office.initialize = function(reason) {
$(document).ready(function() {
app.initialize();
$('#testSelect').click(function() { select("Z10:Z10", "Sheet1") });
});
};
function select (rangeAddress, sheetName) {
Excel.run(function (ctx) {
var range = ctx.workbook.worksheets.getItem(sheetName).getRange(rangeAddress);
range.select();
return ctx.sync();
});
}
有人可以帮忙吗?
答案 0 :(得分:1)
这似乎是API中的错误(或回归)。该团队正在调查它。就解决方法而言,迈克尔桑德斯上面提出的建议可能是你最好的短期赌注。
更新:这确实是Excel桌面客户端中的错误(或回归)。我们今天已修复它,因此对于Office 365 /即点即用用户,它应该可用于下一次更新(即,在几个月内)。
~Michael Zlatkovsky,MSFT Office扩展团队开发人员
答案 1 :(得分:0)
代码完成后回调中的一个选项是绑定到范围,然后navigate到它:
Office.context.document.bindings.addFromSelectionAsync(Office.BindingType.Matrix, {id: "myBinding"}, function(asyncResult){
Office.context.goToByIdAsync("myBinding", Office.GoToType.Binding, function(asyncResult){});
});
-Michael Saunders,办公室加载项的下午