#google-apps-script #google-sheets
Вопрос:
Если это невозможно , могу ли я сделать какой-либо трюк, чтобы открыть msgbox, а затем завершить сценарий, если кто-нибудь попытается получить доступ к сценарию, вот мой код :
function onOpen(){
var ui = SpreadsheetApp.getUi();
var menu = ui.createMenu('Private');
menu.addItem('Clear Cols','clearAli');
menu.addItem('Enter Number of days','noOfDays');
menu.addItem('subject','myEmail')
menu.addToUi();
}
function clearAli(){
var ss = SpreadsheetApp.getActive();
ss.getRangeList(['G2:K108', 'M2:M108', 'O2:O108']).activate().clearContent();
}
function noOfDays(){
var
days = SpreadsheetApp.getUi().prompt('Please enter the number of days.').getResponseText();
SpreadsheetApp.getActiveSpreadsheet().getRange('H2:H5').setValue(days);
}
function myEmail(){
const
subject = SpreadsheetApp.getUi().prompt('Enter your subject line').getResponseText();GmailApp.sendEmail('noelaramouny@gmail.com,alinemanoukian04@gmail.com',subject,'https://docs.google.com/spreadsheets/d/1Z92UC7RAqScObY2vpAKlzIvoY4yihxRtqw_2LEB2-8g/edit?usp=sharing');
}
Комментарии:
1. Можете ли вы предоставить более подробную информацию о вашей проблеме? Кому разрешен доступ к скрипту, а кому нет? Вы имеете в виду кого угодно, включая владельца файла? Является ли ваш файл общим для других пользователей? Пожалуйста, уточните
Ответ №1:
const whitelist = ['mail1', 'mail2'];
const user = Session.getActiveUser().getEmail();
if (!whitelist.includes(user)) {
Browser.msgBox('Not in whitelist');
return;
}