1 Answers

您好,获取表格填充位置受文档排版时间的影响,这里向您推荐两种解决方案:

  1. 从后往前填充。从后往前填充是基于文档排版原理来避免 xxx row is not found,唯一要注意的是第一次填充完成时,不能立即进行第二遍填充,需要稍微等待一会,原因还是文档排版问题。可以这样理解:每次进行填充文档都会重新从前往后排版,文档页数越多,这个排版时间就越长,等待一段时间就是让第二遍填充前,拿到的表格总行数是正确的。等待一段时间,可以在交互上做个loading之类的,一般填充完,滚动查看填充结果的这段时间就已经足够完成排版的了。
// 结合您的代码从后往前填充
for(let j = finalIndex - item.footNum; j >= 1 + item.headNum; j--){}
for(let k = sort.length; j >= 1; k--){}
  1. 自定义html表格+Range.PasteHtml,用td/tr标签先渲染出table,然后使用PasteHtml直接渲染, 相对比较推荐这种方式。