Глобальная и постоянная структура набора / данных в скрипте приложения Google
Я работал над функцией настраиваемого листа с помощью Google App Script, и у меня возникли проблемы с созданием глобального набора, к которому могут получить доступ все функции.
По сути, у меня есть файл с двумя листами - на одном из них есть столбец пользователей и связанных данных, где есть раскрывающийся список (с использованием проверки данных), заполненный другим листом, который представляет собой список пользователей. Существует риск того, что люди не смогут использовать раскрывающийся список и могут перезаписать его, введя свои собственные данные в эту ячейку, что приведет к недопустимому пользователю в этой ячейке.
Я пытался написать функцию в скрипте приложения, которая в основном проверяет, находится ли значение ячейки в пределах параметров на другом листе (что приведет к исчезновению всех данных в этой строке, пока они не станут действительными). Однако это кажется очень неэффективным - переключать активный лист на другой лист, повторно собирать все данные, превращать их в набор, а затем каждый раз проверять, входит ли поле в набор. Есть ли способ сделать это только один раз и сохранить?
Я посмотрел на службу «Свойства», но мне кажется, что вам придется структурировать ее и каждый раз перестраивать набор, поскольку он не хранит структуры данных.
ниже - текущая неэффективная идея
// is the name valid?
function validate_name(cell) {
// switch to the other sheet
// grab the data
// turn into a set
return return SET.has(cell) ? true : false
}