gpt4 book ai didi

javascript - 气体 : how to adapt this piece of code to change cell value only if it's empty?

转载 作者:行者123 更新时间:2023-11-28 20:07:55 25 4
gpt4 key购买 nike

我编写了一个函数,该函数从电子表格中的原始文本中提取一些所需的信息并将其放入其他列中。但我只想在该列为空时使用此函数(因为,如果它不为空,是因为它的值是手动更新的)。我尝试使用下面的代码,但我发现 s.getRange(2, 8, output.length, 1).getValue() 不会告诉我给定的单元格是否为空或不是。那么,鉴于下面的代码,我怎样才能实现这一目标呢?

var output = [];
for (var i = 0; i < input.length; i++) {
output.push([ findDate(input[i][0], 'myKeyWord:', -4, -3) ]);
Logger.log("s.getRange(2, 8, output.length, 1).getValue() = " + s.getRange(2, 8, output.length, 1).getValue())
if(s.getRange(2, 8, output.length, 1).getValue()){
s.getRange(2, 8, output.length, 1).setValues(output); // 8 is col H
}

最佳答案

如果我正确理解您的用例,您可以使用如下条件,它将检查单元格中是否有值(并且还防止单元格中意外存在任何空格(有些人有坏习惯)在单元格中添加空格来删除内容而不是清除单元格)

 if(s.getRange(2, 8, output.length, 1).getValue().toString().replace(/ /g,'').length > 0){
...
}
<小时/>

编辑:以下@sscholefield评论:

在回答这个问题时,我确实很犹豫,想知道您是否必须检查列或单个单元格...因为您在谈论手动编辑单元格,所以我选择了单个单元格的选项,但看来我可能都错了...

如果您想检查整个列是否为空,您可以更改代码并将 getValue() 替换为 getValues()...这将是诅咒比较不够充分,这种情况下的想法是将数组长度与“扁平化”数组的长度进行比较,后者类似于 ",,," 如果为空(长度=3),同一示例的数组长度为 [[],[],[],[]](长度 = 4)。

如您所见,我们可以捕捉到长度差异。

请告诉我们这是否可以解决问题。

我建议使用记录器来准确查看您想要比较的内容并做出相应的决定。

注意:顺便说一句,谢谢你的好话,写一本书是我正在认真考虑的事情,但现在它仍然是一个项目,应该保密(哈哈...;-)什么? ..我们在互联网上吗?我的天啊 !没有意识到...)

关于javascript - 气体 : how to adapt this piece of code to change cell value only if it's empty?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20450138/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com