TextFinderでシート内の文字列を検索してみる
ではシート内で検索しましたが、
列内で検索したくて書いたコードです。
コード.gs
function findAllRowsAtCol(){
var rows = [];
var targetCol = 1;
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++ ) {
var row = ranges[i].getRow();
var col = ranges[i].getColumn();
if(col === targetCol) {
rows.push(ranges[i].getRow());
}
}
Logger.log([rows.length, rows]);
}
|
補足
範囲を指定して
range.createTextFinder('探したい文字列')
はできなかったので
targetColで列を指定する方法を書きました。
参考
Class TextFinder
https://developers.google.com/apps-script/reference/spreadsheet/text-finder#findAll()