【Google】スプレッドシート:任意の文字列で囲まれた特定の範囲を取得する

DEVELOP, Google, Spreadsheet

任意の文字列で囲まれた。範囲のセルを取得する方法です。今回は RANGE_STARTRANGE_END 文字列で囲まれたセルを取得する様にしてみます。

スクリプト

// 定の文字列を含むセルの行列を取得します。
function FindCell(sheet,val)
{
  var dat = sheet.getDataRange().getValues();
  
  for(var ii=0;ii<dat.length;ii++)
  {
    for(var jj=0;jj<dat[ii].length;jj++)
    {      
      if(dat[ii][jj] == val)
      {
        return [ii+1, jj+1];
      }
    }
  }
  return [-1, -1];
}
/// 特定の文字列を含む行を検索。
function OutputRange()
{
  var activeSheet = SpreadsheetApp.getActiveSheet();    
  var start = FindCell(activeSheet, "RANGE_START");
  var end = FindCell(activeSheet, "RANGE_END");
  
  var values = activeSheet.getRange(
    start[0],
    start[1]+1,
    end[0] - start[0],
    end[1] - start[1]).getValues();
   Browser.msgBox(values);
}

Posted by kazupon