LANG SELRCT

コードを書く場所

2019年6月26日水曜日

TextFinderでシート内の文字列を検索してみる


列内で特定の値に一致する行番号を取得する
では特定の列で検索しましたが、
ここではシート内で検索するTextFinderを試してみます。



'SPREADSHEET_URL'
'探したい文字列'
を設定して findAllRows()を実行すると
探したい文字列を含む行番号が配列でログに出ます。


コード.gs
function findAllRows(){
  var rows = [];
  var ss_url = 'SPREADSHEET_URL';
  var ss = SpreadsheetApp.openByUrl(ss_url);
  var sheet = ss.getSheets()[0];

  var textFinder = sheet.createTextFinder('探したい文字列');
  var ranges = textFinder.findAll();
  for ( var i = 0; i < ranges.length; i++ ) {
      rows.push(ranges[i].getRow()) ;
  }
  Logger.log(rows);
}



参考

Class TextFinder
https://developers.google.com/apps-script/reference/spreadsheet/text-finder