Я пытаюсь транспонировать свой сценарий от сбора массива из столбца до сбора массива из строки. К сожалению, во время процесса мне удалось довольно хорошо это исправить. Я могу получить правильный столбец, но не могу получить правильный ряд.
if(activeCell.getColumn() == 2 && activeCell.getRow() > 1){
activeCell.offset(0, 1).clearContent().clearDataValidations();
var item = itemDVss.getRange(activeCell.getRow(),activeCell.getColumn(),itemss.getLastColumn()).getValues();
var itemIndex = item[0].indexOf(activeCell.getValue()) + 2;
if(itemIndex != 0){
var itemValidationRange = itemDVss.getRange(itemIndex,3,itemDVss.getLastColumn());
var itemValidationRule = SpreadsheetApp.newDataValidation().requireValueInRange(itemValidationRange).build();
activeCell.offset(0, 1).setDataValidation(itemValidationRule);
}
}
Скрипт должен найти активную ячейку в листе «Оценка» и вернуть соответствующие значения из листа «Товары» (смещение на +1 столбец). Поэтому, находясь в ячейке Estimate! B11, скрипт должен вернуть массив строк из Items! C11 в последний столбец.
Сметная ведомость
dynamicDropDowns.gs строка 34