如何导出选定范围内单元格的属性

编辑: Excel 崩溃的原因是getCellProperties()需要一个具有属性的对象作为参数提取。我觉得自己好傻。

背景:我正在使用最新的 Office Javascript API 构建 Excel 插件。

基本上我想要实现的是提取所选范围的所有属性并将其转换为 JSON。这意味着,获取边框、字体、单元格值等。我已经看到有一些函数可以让我获取整个范围的某些属性,但是如果选定范围内的所有单元格,某些函数将返回 null集合属性没有相同的值。

到目前为止,我已经考虑过使用selectedRange.getCellProperties();where selectedRangeis the user's current selection 在工作表范围内的每个单元格上,但由于某种原因,每当我尝试使用此功能时,Excel 都会崩溃。因此,我能想到的唯一方法是通过在循环中使用循环为所选范围内的每个单元格手动提取这些属性。这当然不是最佳的性能,我相信有更好的解决方案可能。

我怎么能这样做呢?

感谢您抽出宝贵时间提供帮助!


鸿蒙传说
浏览 133回答 3
3回答

浮云间

感谢您报告此问题。从 getCellProperties 中删除参数后,我可以重现崩溃。崩溃的 excel 是不对的,我已经记录了一个内部错误来跟踪。

翻翻过去那场雪

(--我想在雷蒙德的回答下添加评论,但我没有足够的声誉,必须发布一个新的答案:()既然您已经知道 selectedRange.getCellProperties() 的崩溃原因,那么确保参数不为 null 怎么样?getCellProperties 是我所知道的最方便的方法。

至尊宝的传说

从性能考虑,也许您可以尝试getRowPropertiesAPI ?因为您可以一起检索一行中的所有属性。您可以将行属性转换为 JSON 字符串。性能可能会更好。该文档可在https://docs.microsoft.com/en-us/javascript/api/excel/excel.range?view=excel-js-preview#getrowproperties-rowpropertiesloadoptions-找到
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript