Как я могу решить проблемы с правами доступа с помощью пользовательских функций (вызов из ячеек листа Google)?
Like
- "У вас нет разрешения на вызов setDataValidation"
- " У вас нет разрешения на вызов setValue"
Я много исследовал эти типы проблем, особенно проверил подобные проблемы в переполнении стека,Некоторые говорят, что добавляют области в свойствах проектов (мой проект уже имеет требуемую область действия), некоторые говорят, что для вызова пользовательской функции из меню или кнопок .
Но мое требование состоит в том, чтобы вызывать пользовательскую функцию из Google Sheets из ячейки.
Затем я поделюсь этим листом с моей организацией (GSuite), чтобы они могли иметь доступ кданные и пользовательские функции.
У меня проблемы, я не нашел никакого решения.
Пожалуйста, предложите возможные способы решения этой проблемы.
* Я легко могу вызвать эту функцию из Google Apps Scriptнапрямую (из прогона), но не из листов.
Пример кода, который выдает ошибку «У вас нет разрешения на вызов setDataValidation»
function getNamedRanges(type,cell){ // parms ex. ("Cars" ,"D1")
Logger.log(type);
var namedRanges = SpreadsheetApp.getActive().getNamedRanges();
for (var i = 0; i < namedRanges.length; i++) {
if(namedRanges[i].getName()==type){
var cell = SpreadsheetApp.getActive().getRange(cell)
createDropdownForRange(namedRanges[i].getRange(),cell);
}
}
}
function createDropdownForRange(namedRange,cell){
var rule = SpreadsheetApp
.newDataValidation()
.requireValueInRange(namedRange,true);
cell.setDataValidation(rule);
}