Сообщение об ошибке из пользовательской функции при попытке открыть другую электронную таблицу. "У вас нет разрешения на выполнение этого действия".

У меня есть пользовательская функция, которую я хочу использовать для получения значения ячейки на листе из другой электронной таблицы. Два параметра функции: row а также col и они определяют ячейку для ссылки. Всякий раз, когда я пытаюсь использовать функцию, я получаю ошибку "You do not have permission to perform that action.", указывая на строку с методом openByID. Вот моя пользовательская функция:

function TEST(row,col) {
    var formDataSpreadsheet = SpreadsheetApp.openById(FORM_DATA_SPREADSHEET_ID);
    SpreadsheetApp.setActiveSpreadsheet(formDataSpreadsheet);
    var formDataSheet = formDataSpreadsheet.getSheetByName(WEBSITE_FORM_DATA_SHEET_NAME);
    formDataSpreadsheet.setActiveSheet(formDataSheet);
    return formDataSpreadsheet  
}

Нужно ли публиковать FORM_DATA_SPREADSHEET? Любая помощь с благодарностью.

1 ответ

Решение

Извините, я не могу сделать это в пользовательской функции:

Цитата из документации Google:

Если ваша пользовательская функция выдает сообщение об ошибке "У вас нет разрешения на вызов службы X", служба требует авторизации пользователя и, следовательно, не может использоваться в пользовательской функции.

Документация Google - Пользовательские функции

Другие вопросы по тегам