excel - 获取已添加表的名称
问题描述
我在获取我创建的表的名称时遇到问题。
这是我的简化代码:
var mytable = mysheet.tables.add(mysheet.getUsedRange(), true);
...
mytable.load('name');
return context.sync()
.then(function () {
mytable.name;
});
我不想给表格命名(因为它可能已经存在于工作簿中),所以我让 Excel 给它命名。
但是在同步之后我总是得到错误:“未捕获(承诺)错误:无法读取属性'名称'......请调用“context.sync()”......(对不起,我只收到德语错误消息- 所以,这是一个翻译文本)。
有趣的方面:此错误仅在全新的工作簿(Excel 在线)中出现。如果我使用工作簿,我已经使用上述方式创建了一个表格,它可以完美运行,没有任何错误。
我做错了什么?我是否必须加载与“名称”不同的内容?
解决方案
我尝试使用以下代码,它在桌面和 Office Online 上都运行良好:
Excel.run(function (context) {
let sheet = context.workbook.worksheets.getActiveWorksheet();
var mytable = sheet.tables.add(sheet.getUsedRange(), true);
mytable.load('name');
return context.sync()
.then(function () {
console.log(mytable.name);
});
});
如果您仍然遇到问题,您能否发布您的完整代码 - 最好以Script Lab 片段的形式发布?
推荐阅读
- html - FormEmailer 将 CSS 内联删除到 Gmail
- reactjs - 用于 React JS 项目的 SVN 服务器
- java - 确定闰年并显示日期的星期几
- r - 未找到 BiodiversityR::accumcomp.long 函数
- php - 未找到 Laravel 8 存储移动文件
- javascript - 抓取时使用 puppeteer 无限滚动
- excel - 在 Excel 文本函数中使用 Application.Caller (Text.BetweenDelimiters)
- java - Spring Boot 项目 jar 作为另一个项目中的依赖项
- java - 导入 jar 文件以像库一样使用但出现错误
- linux - 系统重启时在 Linux 中执行命令