Как выяснить, находится ли значение в диапазоне ячеек, используя скрипт Google? - PullRequest
0 голосов
/ 24 января 2020

До сих пор я мог получить диапазон и использовать indexOf, но когда я пытаюсь получить индекс, значение всегда равно -1, даже если значение находится в диапазоне.

var ss = SpreadsheetApp.openById('url');
var sheet = ss.getSheetByName('sheetName');

var lookUp = "0000";
var lookUpRange = sheet.getRange(2,5,3,1).getValues();
Logger.log(lookUpRange);//this prints the array  [[0000], [123 456 7890], [98765.0]]
//but when I do
var index = lookUpRange.indexOf(lookUp);
Logger.log(index);
//the output I get is -1.0

Даже когда Я изменяю переменную lookUp Я все еще получаю -1.0 в качестве индекса. Я что-то упускаю? Как я могу получить положительное число, чтобы проверить, имеет ли мой массив заданное значение c? Любые ссылки будут оценены.

1 Ответ

3 голосов
/ 24 января 2020

Имейте в виду, что диапазон значений представляет собой двумерный массив.

Вам необходимо l oop через внешний массив (строки).

Образец:

var ss = SpreadsheetApp.openById('url');
var sheet = ss.getSheetByName('sheetName');

var lookUp = "0000";
var lookUpRange = sheet.getRange(2,5,3,1).getValues();
Logger.log(lookUpRange);//this prints the array  [[0000], [123 456 7890], [98765.0]]
//but when I do
for (var i = 0; i < lookUpRange.length; i++){
  var index = lookUpRange[i].indexOf(lookUp);
  Logger.log(index);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...