使用Javascript的电子表格中的第一个空行
我正在编写一些代码,用于自动生成报告并将其附加到电子表格中。程序定期运行,每次运行生成一组数据并将其插入特定电子表格文件的第一个空行 在编写插入行的代码时,我发现没有用于搜索第一个空行所在位置的API。因此,我需要使用readapi来搜索行号以插入新数据 读取API如下所示: 由于电子表格是在线存储的,为了提高性能,readCells每次最多只能返回30行数据使用Javascript的电子表格中的第一个空行,javascript,api,async-await,office-js,Javascript,Api,Async Await,Office Js,我正在编写一些代码,用于自动生成报告并将其附加到电子表格中。程序定期运行,每次运行生成一组数据并将其插入特定电子表格文件的第一个空行 在编写插入行的代码时,我发现没有用于搜索第一个空行所在位置的API。因此,我需要使用readapi来搜索行号以插入新数据 读取API如下所示: 由于电子表格是在线存储的,为了提高性能,readCells每次最多只能返回30行数据 我可以写一个函数来搜索a列中第一个空行的位置吗?请注意,该电子表格用于自动报告,因此行数可能非常大,我希望能够足够快地生成报告。在您所
我可以写一个函数来搜索a列中第一个空行的位置吗?请注意,该电子表格用于自动报告,因此行数可能非常大,我希望能够足够快地生成报告。在您所说的注释中,我们可以假设之前,数据总是从第1行开始连续写入。在这种情况下,您正在寻找方便的方法,可能有一个
true
参数:
const range = worksheet.getUsedRange(true);
从文件中:
使用的范围是包含指定了值或格式的任何单元格的最小范围。如果整个工作表为空,此函数将返回左上角的单元格(即不会抛出错误)
参数
值仅
可选。如果为true,则仅将具有值的单元格视为已用单元格(忽略格式设置)布尔值
您将获得已使用的范围,然后查询该范围以找出其终点。第一个空白行是范围结束后的下一行。基本上我从某个地方开始,得到下一个30,然后检查是否有任何结果为空。如果不是,我用另一个start调用同一个函数,它是30+上一个start,否则我返回start+索引为null
async function readCell(column, start) {
const results = await readCells(`${column}${start}:${column}${start + 30}`);
const foundIndex = results.find(element => element === null);
if (foundIndex === -1) {
return await readCell(column, start + 30);
} else {
return foundIndex + start;
}
}
您使用的是哪种电子表格?谷歌表单?网络Excel?Zoho Sheet?Web Excel。您可以假设以前的数据总是从第1行开始连续写入。如果我没有使用Web Excel或Google Sheets,需要具体使用readCells方法,是否有线索?@IsmailHossain-如果您只能使用
readCells
,您需要在问题中明确说明这一点;不这样做会使问题变得非常不完整。您还需要说明它支持什么输入,返回什么,等等。但是如果您使用的是Web Excel,您不应该仅限于这一个函数。