【问题标题】:Issue with multiple conditions in script editor脚本编辑器中的多个条件问题
【发布时间】:2020-07-22 18:56:49
【问题描述】:

我为一个有多个标签的谷歌工作表创建了一个脚本编辑器。我似乎无法正常工作的一个 if 语句是 - 如果工作表“员工进化”第 8 列等于“不合格”且第 13 列不等于“无数据”,则将该行移至“不合格”表 em> 我尝试了很多不同的方法来重新排列,但都无法正常工作。

 **function onEdit(event) {
      var ss = SpreadsheetApp.getActiveSpreadsheet();
      var s = event.source.getActiveSheet();
      var r = event.source.getActiveRange();
      if(s.getName() == "Employee Evolution" && r.getColumn() == 8 && r.getValue() == "Disqualified" && r.offset.getValue(0,5) != "NO DATA") {
        var row = r.getRow();
        var numColumns = s.getLastColumn();
        var targetSheet = ss.getSheetByName("Disqualified");
        var target = targetSheet.getRange(targetSheet.getLastRow() + 1, 1);
        s.getRange(row, 1, 1,numColumns).moveTo(target);
    s.deleteRow(row);** 

我没有编码经验,所以我很难理解解释这些东西的 javascript 文档。请帮忙!

以下是我的电子表格的链接 https://docs.google.com/spreadsheets/d/1vp46hMbmB5968cRW2BGhS66qqNhl91Llk8xeknlRuQc/edit#gid=0

现在我只有第一个 if 语句和 else if 语句设置了多个条件,但这不起作用。当我用 Disqualified 填充第 8 列 (H) 并用任何内容填充第 13 列 (M) 时,什么都没有发生。而且,如果我使用 Qualified 填充列 H 并使用付费搜索填充列 M,则不会发生任何事情。

基本上,我希望该行移动到 PPC 选项卡或取消资格选项卡。但是,在 H 和 M 列都填充了特定文本之前,我不希望该行移动。如果 H 列显示“合格”且 M 列显示“付费搜索”,则该行应移至 PPC 选项卡。如果 H 列显示“不合格”且 M 列显示除 NO DATA(甚至付费搜索)以外的任何内容,则该行应移至“不合格”选项卡。

我无法解决的问题是我需要让每个 if 语句在执行 true 之前查看两列。

我希望这是有道理的,并感谢您的帮助。

【问题讨论】:

    标签: if-statement multiple-conditions google-apps-script-editor


    【解决方案1】:

    由于我们没有您正在使用的电子表格,因此无法仅根据代码来定义是否应该工作。

    但我确实注意到了一些你假设可能有问题的事情,因为这打破了如果进入:

    • s.getName() == "Employee Evolution" => 检查您当前处于活动状态的工作表是否名为“Employee Evolution”
    • r.getColumn() == 8 => 检查您当前处于活动状态的列是否为第 8 列(第 h 列)
    • r.getValue() == "Disqualified" => 检查您当前处于活动状态的单元格是否等于 Disqualified(也必须匹配大小写)
    • r.offset.getValue(0,5) != "NO DATA") => 检查列偏移量 5(实际上等于第 13 列)是否不同于“NO DATA”(也必须匹配大小写)

    当然,因为这个函数是 onEdit,所以这个代码只会在你改变电子表格上的东西时运行。

    所以我想通过阅读该代码,每当有人将第 8 列更改为“不合格”(也必须匹配大写字母)并且所有其他条件都匹配时,它应该被移至“不合格”表。注意所有区分大小写的场景。

    我认为总体上代码看起来不错。共享电子表格,以便我们检查可能出现的问题。

    PS:激活的东西是指你的光标被点击/选择了那个东西

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-01-09
      • 1970-01-01
      • 2022-10-23
      • 2020-08-15
      • 2017-11-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多