【发布时间】:2015-11-11 08:19:43
【问题描述】:
由于无法取消加载项所做的更改,我们需要为用户提供备份选项。
当前版本的 JavaScript API for Excel 没有复制工作表及其数据和格式的方法。
有人知道添加这种方法的任何解决方法或计划吗?
【问题讨论】:
标签: excel office-addins office365-apps office-js
由于无法取消加载项所做的更改,我们需要为用户提供备份选项。
当前版本的 JavaScript API for Excel 没有复制工作表及其数据和格式的方法。
有人知道添加这种方法的任何解决方法或计划吗?
【问题讨论】:
标签: excel office-addins office365-apps office-js
目前确实没有简单的方法来复制工作表,因此请随时在Office Extensibility Platform's UserVoice 上请求它。虽然将来可能会出现这样的 API,但您可以同时使用 worksheetCollection.add() 添加新工作表,使用 worksheet.getUsedRange() 方法获取工作表的使用范围并将其值复制到另一个工作表。
您的代码将如下所示:
function duplicateSheet(worksheetName) {
Excel.run(function(ctx) {
var worksheet = ctx.workbook.worksheets.getItem(worksheetName);
var range = worksheet.getUsedRange();
range.load("values", "address");
var newWorksheet = ctx.workbook.worksheets.add(worksheetName + " - Backup");
return ctx.sync().then(function() {
var newAddress = range.address.substring(range.address.indexof("!") + 1);
newWorksheet.getRange(newAddress).values = range.values;
}).then(ctx.sync);
});
}
让我知道你的效果如何。
Gabriel Royer - Microsoft Office 可扩展性团队的开发人员
【讨论】: