Я поиграл с этой идеей сегодня утром, и вы можете использовать этот простой сценарий.
Непосредственно перед его запуском вы сначала выбираете диапазон для проверки, а затем диапазон, который имеет значения проверки. Поиграйте с ним, прежде чем использовать в рабочей таблице.
function makeValidation() {
var ss=SpreadsheetApp.getActive();
var sh=ss.getActiveSheet();
var rgA=sh.getActiveRangeList().getRanges();
if(rgA.length==2) {
rgA[0].setDataValidation(SpreadsheetApp.newDataValidation().requireValueInRange(rgA[1]));
}else{
SpreadsheetApp.getUi().alert('Invalid RangeList. Only two ranges at a time please. The range to validate first and the range of values second.')
}
}