Я новичок в написании сценариев / кодировании и в настоящее время пытаюсь использовать Редактор сценариев Google Sheets в попытках использовать множественный динамический выпадающий список.
До сих пор я добивался успеха до того момента, когда его нетдольше работает и может действительно использовать некоторую справку, чтобы проверить, почему.
Сценарий должен собирать данные из вкладки параметров и применять их к вкладке "Мастера".
Это будет использоваться для получения информации. примерно из 9 столбцов и примените его на вкладке «Мастера», в зависимости от того, какие параметры были выбраны.
var wsOptions = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Options");
var options = wsOptions.getRange(2, 1,wsOptions.getLastRow()-1,3).getValues();
function myFunction() {
var list = ["a","b","c","d"];
var cell = ws.getRange("C2");
applyValidationToCell(list,cell);
}
function onEdit(e){
var.activeCell = e.range;
var val = activeCell.getValue();
var r = activeCell.getRow();
var c = activeCell.getColumn();
var wsName = activeCell.getSheet().getName()
if(wsName == "Master" && c === 1 && r > 1){
if(val === ""){
ws.getRange(r, 2) .clearContent();
}
var filteredOptions = options.filter(function(o){return o[0] === val });
var listToApply = filteredOptions.map(function(o){ return o[1] });
var cell = ws.getRange(r, 2);
applyValidationToCell(list,cell);
}
function applyValidationToCell(list,cell){
var rule = SpreadsheetApp
.newDataValidation()
.requireValueInList(list)
.setAllowInvalid(false)
.build();
cell.setDataValidation(rule);
}```