我有一个简单自动化的脚本。我需要检查数据是否已经存在,如果是,只需退出整个函数,而不是继续设置值。我如何使用此脚本执行此操作?谢谢!
function onEdit() {
var sheetName = "SUPPORT INFO";
var s = SpreadsheetApp.getActiveSheet();
if (s.getName() !== sheetName) return;
var r = s.getActiveCell();
if( r.getColumn() != 2 ) { //checks the column
var row = r.getRow();
var date = new Date();
SpreadsheetApp.getActiveSheet().getRange('B' + row.toString()).setValue(date);
SpreadsheetApp.getActiveSheet().getRange('A' + row.toString()).setValue("Closed");
SpreadsheetApp.getActiveSheet().getRange('O' + row.toString()).setValue("TECH1");
};
};
答案 0 :(得分:1)
确定程序流的逻辑应该是什么。如果您需要代码只能使用一列,那么您可以排除其他所有内容。
排除所有其他列:
<?php
echo '<br/>'."Your auction isn't live yet, the admin needs to approve it.</br>For more info <a href=\"www.website.com\" target=\"_blank\" >CLICK HERE</a>";
?>
因此,使用此代码,如果您将变量var theActiveRange = sheet.getActiveCell();
columnNumberToUse = X;
if ( theActiveRange.getColumn() !== columnNumberToUse) {return;}//quit if this column
//is any column other than X
if (!theActiveRange.getValue()) {return;}
指定为值2,那么当列号 2时,代码将继续运行。所以,如果代码超过了这些行:
columnNumberToUse
你需要了解&#34;不是&#34;运算符,这是一个感叹号。
columnNumberToUse = 2;
if ( theActiveRange.getColumn() !== columnNumberToUse) {return;}//quit if this column
//number is not equal to the columnNumberToUse
//If the code gets to here - then you know the active range is column 2
数字1不等于5,因此上面的代码行对变量var is_it_true = 1 !== 5;
示例代码正在测试列号是否不等于2.