如果单元格已填充数据,请退出Google脚本

时间:2018-04-04 14:29:51

标签: google-apps-script google-sheets eventtrigger

我有一个简单自动化的脚本。我需要检查数据是否已经存在,如果是,只需退出整个函数,而不是继续设置值。我如何使用此脚本执行此操作?谢谢!

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");
  };
};

1 个答案:

答案 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;

的值为true

示例代码正在测试列号是否不等于2.