【问题标题】:Make a Cell Flashing in Google Sheet在 Google 表格中制作一个闪烁的单元格
【发布时间】:2021-03-27 22:51:44
【问题描述】:

脚本文件;它将在“表格”表的两个不同列中查找两个不同的值。 B 列中的值:[ELECTRIC] D 列中的值:[CONTINUE]

如果它甚至找到包含上述值的单行; 我希望“table2”表中的单元格 [H22] 闪烁。

我怎样才能得到它?

这是我到目前为止的脚本;

function onOpen(){
  var ss1 = SpreadsheetApp.getActiveSpreadsheet();
  var mysheet1 = ss1.getSheetByName("Table");
  var values = mysheet1.getRange(2,2,mysheet1.getLastRow()).getValues();
  var values2 = mysheet1.getRange(2,4,mysheet1.getLastRow()).getValues();

  
  if (values == "ELECTRIC" && values2 == "CONTINUE"){
    var ss2 = SpreadsheetApp.getActiveSpreadsheet();
    var mysheet2 = ss2.getSheetByName("Table2");
    var cell = mysheet2.getRange("H22");
      for (var i = 0; i < 50; i++) {
      cell.setBackground(i % 2 ? "WHITE" : "RED");
      SpreadsheetApp.flush();
      Utilities.sleep(500);
    }
  }  
}

感谢您的帮助...

【问题讨论】:

    标签: google-apps-script google-sheets


    【解决方案1】:

    getValues() 返回一个二维数组,而不是字符串。您需要遍历数组中的值来检查您的条件。

    首先我会将您的范围合并为一个变量,因为您有兴趣在整个行上测试条件:

    var values = mysheet1.getRange(2,2,mysheet1.getLastRow(), 4).getValues();
    

    现在你循环遍历你的二维数组:

    for (var i = 0; i < values.length; i++) {
      var col1 = values[i][0]
      var col2 = values[i][2]
    
      if (col1 === 'ELECTRIC' && col2 === 'CONTINUE' {
        // Flash cell "H22"
        break; // Break once you find a match
      }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-30
      • 1970-01-01
      • 1970-01-01
      • 2012-02-01
      • 1970-01-01
      相关资源
      最近更新 更多