Office js 使用表格Excel JS中的getCell()设置单元格值

Office js 使用表格Excel JS中的getCell()设置单元格值,office-js,exceljs,Office Js,Exceljs,我被困在这个问题上,在任何网站上都找不到答案。我试图设置单元格的值,但出现以下错误: 未加载属性值。请调用加载方法和context.sync 我知道我需要调用load方法,但我尝试的加载都无法工作 Excel.runfunction上下文{ var sheet=context.workbook.worksheets.getActiveWorksheet; var FilledTable=sheet.tables.getItemrandomId; Filled Table.rows.loadite

我被困在这个问题上,在任何网站上都找不到答案。我试图设置单元格的值,但出现以下错误:

未加载属性值。请调用加载方法和context.sync

我知道我需要调用load方法,但我尝试的加载都无法工作

Excel.runfunction上下文{ var sheet=context.workbook.worksheets.getActiveWorksheet; var FilledTable=sheet.tables.getItemrandomId; Filled Table.rows.loaditems;//尝试了此操作和其他许多操作。。。 FilledTable.getDataBodyRange.loadvalues; 返回context.sync.then函数{ FilledTable.getRange.getCell1,0.values=[[test]];//正在尝试执行此操作! }; } 谢谢你的帮助

更新

我正在尝试循环表的第一列,并使用已设置的值设置超链接

示例:完整示例

Excel.runfunction上下文{ var sheet=context.workbook.worksheets.getActiveWorksheet; var filledTable=sheet.tables.getItemrandomId; var usedRange=filledTable.getRange.loadvalues,rowCount; 返回context.sync.then函数{ var keyPos=headers.indexOfKey; ifkeyPos>-1{ forvar z=1;z我可以通过使用getRow和getColumn而不是值来解决我的问题!以下是固定代码:

Excel.runfunction上下文{ var sheet=context.workbook.worksheets.getActiveWorksheet; var filledTable=sheet.tables.getItemrandomId; var usedRange=filledTable.getRange.loadvalues,rowCount; 返回context.sync.then函数{ var keyPos=headers.indexOfKey; ifkeyPos>-1{ forvar z=1;zJ、 您不需要调用load来设置Office JS代理对象上的值或任何其他属性。仅当您希望从Excel获取/读取属性时,才需要调用load。如果你能给我一些关于你想用table对象完成什么的详细信息,那么我可以给你一个代码片段。@JakobNielsen我用我想完成的事情更新了我的问题我注意到了一件事。Filled Table.getDataBodyRange.loadvalues会将值加载到代理范围对象中,而您的代码不会将其分配给变量。但是同步后的代码不使用加载的代理对象。通过调用FilledTable.getRange.getCell,您正在创建一个全新的范围代理对象,该对象没有加载其值。我建议您从var usedRange=FilledTable.getDataBodyRange.loadvalues开始。然后在同步之后,调用usedRange对象上的getCell,而不是一个全新的Range对象。@RickKirkham您是对的,但我在尝试访问值时仍然遇到问题。在使用的范围内使用getCell效果很好,但是如果我尝试使用.values,我会得到与以前相同的错误。谢谢你的帮助,谢谢。我现在更明白你想做什么了。getCell还创建一个新的范围对象。因此getCell.values试图读取尚未加载其值的对象的值。尝试读取usedRange.values并在其中循环创建每个值的超链接,并将其分配给usedRange的相应单元格。另外,请提供整个Excel.run方法,包括loop.J,很高兴您在Ricky的评论中找到了解决方案。这里有一个指向我的解决方案的链接:您可以在脚本实验室中尝试。它与您已经拥有的非常相似。感谢您的详细解决方案和您的时间!随时继续提问,感谢您探索Excel加载项。我们很好奇你们在建什么。