首页 > 解决方案 > 添加条件以检查这两个单元格 B11 和 D11 中的值是否不为空并使其成为必需

问题描述

 function CheckIn() {
 var formS = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("form");
 var logS = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("log");

 var str = formS.getRange("B2").getValue();
 var values = 
SpreadsheetApp.getActiveSpreadsheet().getSheetByName("log").getDataRange().getValues();
 **var values1 = [[formS.getRange("B11").getValue()]]; //required
 **var values2 = [[formS.getRange("D11").getValue()]];//required
 for (var i=0; i < values.length; i++) {
 var row = values [i];
 if (row[SEARCH_COL_IDX] == str) {
 var INT_R = i+1

 logS.getRange(INT_R,7).setValues(values1);
 logS.getRange(INT_R,8).setValues(values2);
 SpreadsheetApp.getUi().alert('"Checked In"');

 } } }

我正在尝试添加一个条件来检查这两个单元格 B11 和 D11 中的值是否不为空并使其成为必需

标签: javascriptgoogle-apps-scriptgoogle-sheets

解决方案


如果要检索单元格 B11 和 D11 中的值,请使用以下命令:

var values1 = formS.getRange("B11").getValue(); //required
var values2 = formS.getRange("D11").getValue(); //required

然后您可以使用以下方法检查两个单元格是否包含一个值:

if ( values1 && values2) {
  console.log( 'both cells contain data' ); // and continue your processing...
} else {
  console.log( 'one or both cells empty' ); // and stop at this point...
}

请记住,即使是包含单个空格的单元格也将被视为“数据”。因此,您可能需要根据需要应用的具体条件来改进上述内容。例如:

if ( values1 && values1.toString().trim() !== '' 
    && values2 && values2.toString().trim() !== '') { ... 

要“使其成为必需”,您可以简单地从该点停止处理 - 但这确实取决于应该如何处理这种情况。


推荐阅读