【发布时间】: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