2

我正在向 Google 电子表格添加功能。电子表格从网络上导入数据,我把它们都格式化得很好。我的一个专栏是一系列字符串,以两种方式之一格式化 - 字符串或 *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)
    }
  }
}

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

4

1 回答 1

3

这是更新的代码。见评论有洞察力

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);
    }
  }
}
于 2013-04-25T08:49:25.260 回答