【问题标题】:Hide Rows in a Google Spreadsheet based on first Character in a cell根据单元格中的第一个字符隐藏 Google 电子表格中的行
【发布时间】:2013-04-19 01:13:20
【问题描述】:

我正在为 Google 电子表格添加功能。电子表格从网络上导入数据,我把它们都格式化得很好。我的一个专栏是一系列字符串,以两种方式之一格式化 - String 或 *String * 没有空格(基本上是从网络导入斜体)。

我正在尝试编写一个在我打开电子表格时运行的脚本,它将:

  • 取消隐藏我的电子表格中的所有行
  • 循环浏览电子表格
  • 隐藏第 2(B) 列以星号开头的每一行

我有以下几点:

function onOpen() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName("DoDH");
  sheet.showRows(1, sheet.getMaxRows());
  for(var i=1; i<sheet.getMaxRows()+1; ++i){
    if (sheet.getRange(i, 2).getValue().){
      sheet.hideRow(i)
    }
  }
}

我不知道如何访问每个单元格内的字符串,以及如何访问字符串中的字符。提前感谢您的帮助。

【问题讨论】:

    标签: google-apps-script google-sheets


    【解决方案1】:

    这里是更新的代码。见 cmets 了解一下

    function onOpen() {
      var ss = SpreadsheetApp.getActiveSpreadsheet();
      var sheet = ss.getSheetByName("DoDH");
      var maxRows = sheet.getMaxRows();
    
      //show all the rows
      sheet.showRows(1, maxRows);
    
      //get data from clumn B
      var data = sheet.getRange('B:B').getValues();
    
      //iterate over all rows
      for(var i=0; i< data.length; i++){
        //compare first character, if asterisk, then hide row
        if(data[i][0].charAt(0) == '*'){
          sheet.hideRows(i+1);
        }
      }
    }
    

    【讨论】:

      猜你喜欢
      • 2015-05-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-03
      • 1970-01-01
      • 1970-01-01
      • 2016-05-14
      相关资源
      最近更新 更多