В Google Таблицах, когда вы создаете выпадающий список через `DataValidationBuilder` и указываете диапазон данных, это, как правило, интерпретируется как абсолютная ссылка. К сожалению, в API Google Apps Script нет встроенной функции для создания относительных ссылок в контексте создания правил валидации данных, так как ссылки на диапазоны в этот момент по умолчанию преобразуются в абсолютные.
Тем не менее, вы можете использовать некоторые обходные пути. Например, вы можете создать выпадающий список на основе формулы или использовать имя диапазона, если необходимо сохранить относительные ссылки более или менее «относительными».
Вот один из способов обойти эту проблему, используя именованные диапазоны:
1. В Google Таблицах создайте именованный диапазон для вашего диапазона данных, например, назовите его `MyRange`.
2. Затем измените свой JavaScript код следующим образом:
```javascript
// Устанавливает выпадающий список в ячейку A1 и требует совпадения значения с
// именованным диапазоном 'MyRange', дополняя поле выпадающим списком.
var cell = SpreadsheetApp.getActive().getRange('A1');
var range = SpreadsheetApp.getActive().getRangeByName('MyRange');
var rule = SpreadsheetApp.newDataValidation().requireValueInRange(range).build();
cell.setDataValidation(rule);
```
Таким образом, если у вас есть необходимость использовать относительные ссылки, вы можете просто добавлять или изменять данные в вашем диапазоне `MyRange`, и это будет работать, как вам нужно, без необходимости изменять сам скрипт.
Но если именованные диапазоны не являются подходящим решением для вас, к сожалению, вам придется использовать абсолютные ссылки в контексте этого скрипта.