Циклически перебирая Datang для s в строке X на листе A и проверяйте, соответствуют ли они данным в строке X на листе B, и если нужно, нужно получать данные из соседней ячейки - PullRequest
0 голосов
/ 17 мая 2019

Итак, у меня есть лист, в котором есть данные в строке X столбцов C и D, то есть данные на две ячейки.Я собираюсь сохранить данные из строки X в переменную для их хранения.Затем я хочу использовать данные, числовое значение из строки X столбца C, чтобы найти совпадающее значение на другом листе с именем DataBase, расположенном где-то в столбце J. Однажды, если я найду это число, я захочу взять данные в соседней ячейке, столбец Kи сохранить это в переменной.Затем мне нужно сравнить эти переменные, чтобы увидеть, совпадают ли они, если они не меняют цвет недопустимых данных из столбца D листа sheet1, и переходят к следующей строке столбца C и продолжают процесс, пока я не закончу.

function goodDataCheck() {


  var sheet = SpreadsheetApp.getActive();
  var bpNum = sheet.getDataRange().getValues();


  for(var i = 0; i < bpNum.length-1;i++)
  {
    var matcher = sheet.getSheetByName("Database").getDataRange(i + 1, 9).getValues(); // get value in cell i + 1 column 9 or "j"

    if(bpNum[i][2] == matcher[i][9])
      {
      var alleleRow = i;
      var currentAllel = sheet.getRange(alleleRow + 1, 9); // get value of 
      current cell


      if (currentAllel == matcher)
      {
        sheet.getRange(i, 3).setBackground('green')
      } else
      {
          sheet.getRange(i, 3).setBackground('yellow')
      }

    }
  }
}

я получаю следующую ошибку Не могу найти метод getDataRange (число, число).(строка 10, файл «AllelGoodData

»

1 Ответ

0 голосов
/ 17 мая 2019

Это, вероятно, происходит потому, что ваш звонок для

sheet.getSheetByName("Database") 

возвращает

undefined

Попробуйте отладить код или объявить новую переменную, чтобы сохранить значение sheet.getSheetByName ("База данных"), и проверить, действительно ли это происходит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...