javascript - 为什么工作表 ID 在重新打开文档(Excel javascript API)后发生变化?

标签 javascript excel ms-office worksheet office-js

在添加工作表(手动/编程)并运行下面的代码后,在我的 Excel 选项卡 Pane 插件中我有工作表对象,其中 id 为“{040E0F18-0F61-4CD9-886D-95112C925793}”,然后我保存工作簿,关闭并再次打开,运行下面的代码,它告诉我 worksheet.id 现在是“{00000000-0001-0000-0000-000000000000}”! 在 office.js reference关于工作表 ID:

The value of the identifier remains the same even when the worksheet is renamed or moved. Read-only.

Excel.run(function (ctx) {
    var sheet = ctx.workbook.worksheets.getActiveWorksheet().load('name');
          return ctx.sync().then(function () {  
                console.log(sheet);
          });
  });

最佳答案

documentation是 ( very ) 最近更新以澄清这一点。 ID 不应在同一 session 中更改(即当文档打开时)。然而,它们确实会在 session 之间发生变化(即打开和关闭文档时)。

来自最新的文档:

Returns a value that uniquely identifies the worksheet in a given workbook. The value of the identifier remains the same even when the worksheet is renamed or moved. Values change with each session of the file being opened. Read-only.

关于javascript - 为什么工作表 ID 在重新打开文档(Excel javascript API)后发生变化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37843510/

相关文章:

ms-office - Office 365 Preview API 是否提供对任务的访问?

c# - 读取/写入 Excel 2007 受密码保护的文档

javascript - 如何让单选按钮工作两个任务?

javascript - react 并使用 ReactDOM.createPortal() - 目标容器不是 DOM 元素错误

javascript - Jquery - 从下拉列表选择到上一个输入字段元素的值

c# - 将 Excel 工作表导入数据 GridView

javascript - 给定一个日期/时间字符串,使用 javascript/jquery,如何确定它是否是今天?

vba - 根据条件删除行

excel - 如何在Excel中将第一个字母小写

javascript - Microsoft Javascript 插件 : read/write to Excel, 访问