Я пытаюсь заполнить раскрывающийся список проверки данных, созданный в скриптах Google, данными из 2 столбцов - PullRequest
0 голосов
/ 28 мая 2020

На одном листе пользователь выбирает серию из раскрывающегося списка. На основе этой серии в столбце рядом с ним появляется еще один раскрывающийся список под названием Коды. Все это работает с использованием кода ниже. Все данные для списков проверки находятся в массиве данных листа.

Моя цель. В этом раскрывающемся списке я хочу, чтобы пользователь видел как коды, так и измерения, которые находятся в столбце рядом с кодами, чтобы пользователю было легче выбрать.

Мой код выглядит следующим образом: Может кто-нибудь помочь мне отрегулировать это.

datass - это лист, на котором находятся списки. SeriesS2 получает весь диапазон данных, makeIndex3 получает столбец #, в котором Series можно найти в массиве данных.

Я хочу, чтобы validationRuleSeries3 содержал оба столбца makeIndex3 и makeIndex3 + 1

  var SeriesS2 = datass.getRange(41, 3, 1, 580).getValues(); // row, column, numRows, numColumns

  var makeIndex3 = SeriesS2[0].indexOf(activeCell.getValue()) + 3;

  if(makeIndex3 != 0) {

      var validationRangeSeries3 = datass.getRange(42, makeIndex3, 50);   //  datass.getLastRow());  add ",2" to show data from 2 columns, but the user can choose both
      // var validationRangeSeriesDim = datass.getRange(42, makeIndex3 + 1, 50);
      // var validationRangeSeriesX = validationRangeSeries3 + " - " + validationRangeSeriesDim;
      // var validationRangeSeriesY = datass.getRange(42, makeIndex3, 50) + datass.getRange(42, makeIndex3 + 1, 50);   
      var MaterialS3 = datass.getRange(40, makeIndex3).getValue();
      var validationRuleSeries3 = SpreadsheetApp.newDataValidation().requireValueInRange(validationRangeSeries3).setAllowInvalid(true).build();
      activeCell.offset(0, 1).setDataValidation(validationRuleSeries3);

}

...