这一篇咱们用一个简单的例子,演示如何读取文档基本信息。每个文档都有这些基本信息,大致如下图所示。.

跟前几个例子不同,今天我们用ScriptLab这个工具,这是一个插件,可以在Excel,PowerPoint,Word,Outlook中使用,它所使用的代码库是标准的(用的是这个https://appsforoffice.microsoft.com/lib/1/hosted/office.js) ,与此前的Office Scripts的语法略有不同。【这其实是很不应该的】
这里用到的对象,主要有 workbook, worksheet, properties等。另外要注意,这里的代码相对更加规范一些,例如要加载某个属性,必须先加载它。
$("#run").click(() => tryCatch(run));async function run() {await Excel.run(async (context) => {const wb = context.workbook;const sheet = wb.worksheets.getActiveWorksheet();const properties = wb.properties;wb.load("name");properties.load(["name","author","lastAuthor","title","category","comments","company","subject"]);await context.sync();const data = [["文件名", context.workbook.name],["作者", properties.author],["最后修改人", properties.lastAuthor],["标题", properties.title],["类别", properties.category],["备注", properties.comments],["公司", properties.company],["主题", properties.subject]];sheet.getRange("A1").getResizedRange(data.length - 1, 1).values = data;sheet.getUsedRange().getEntireColumn().format.autofitColumns();await context.sync();});}async function tryCatch(callback) {try {await callback();} catch (error) {console.error(error);}}
代码运行效果如下,请参考

后续脚本都将使用ScriptLab来做。