gpt4 book ai didi

if-statement - Google Script .getvalue() 不处理带有公式的单元格

转载 作者:行者123 更新时间:2023-12-04 04:53:12 24 4
gpt4 key购买 nike

我有这个用于谷歌表的谷歌脚本,当第 15 列说“跟踪”时,它会将数据行从“Sheet1”移动到“Sheet2”,当我输入“跟踪”时它工作得很好,但我希望该列是一个IF 方程类似于 IF(G:G="tracking not available at this time","","tracking")。但是代码似乎无法识别从“”到“跟踪”的公式变化。我需要更改 getvalue() 吗?或者这个问题有不同的解决方法吗?我已经在电子表格中使用 =query(importrange) 来复制带有触发词的数据,但我真的希望这更像是一个存档系统,并在“sheet1”上的第 15 行时在“Sheet2”的底部添加一行谢谢!这是代码:

function onEdit(event) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = event.source.getActiveSheet();
var r = event.source.getActiveRange();

if(s.getName() == "Sheet1" && r.getColumn() == 14 && r.getValue() == "tracking") {
var row = r.getRow();
var numColumns = s.getLastColumn();
var targetSheet = ss.getSheetByName("Sheet2");
if(targetSheet.getLastRow() == targetSheet.getMaxRows()) {

targetSheet.insertRowsAfter(targetSheet.getLastRow(), 20);
}
var target = targetSheet.getRange(targetSheet.getLastRow() + 1, 1);
s.getRange(row, 1, 1, numColumns).moveTo(target);
s.deleteRow(row);
}
}

最佳答案

我最近遇到了这个问题
我昨天花了大约 3 个小时调试一些东西,这就是罪魁祸首。

尝试使用 r.getDisplayValue() 而不是 r.getValue

我自己还是个新手,如果我错了,请随时纠正我,因为如果有不同的原因,我真的很想知道!!!
似乎如果没有输入单元格中的值而是通过诸如 =query() 或类似方法之类的公式放置在那里,我认为它实际上看不到单元格中有值。 (我得到了空值或公式本身)
如果您使用 getDisplayValue,它“应该”获得您在单元格中实际看到的值。

关于if-statement - Google Script .getvalue() 不处理带有公式的单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53304976/

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