0
我有一個腳本,它在填寫電子表格表單的用戶名下的Google電子表格中創建一個新工作表。僅針對新用戶觸發
我希望在新用戶填寫與此電子表格關聯的表單時觸發此腳本。當然,新用戶意味着新的電子郵件地址被添加到電子表格中自動生成的「用戶名」列。
這是目前我的代碼:
function MakeSheet() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("default sheet");
var getEmail = Browser.inputBox("user Email: ");
var s1 = ss.getSheetByName("list of users and emails");
var index = s1.getRange(1,1,s1.getLastRow(),1).getValues();
var values = s1.getRange(1,2,s1.getLastRow(),1).getValues();
nextIndex: for(var i in index) { if(index[i][0] == getEmail) { var getName = values[i][0];continue nextIndex;}}
ss.setActiveSheet(ss.getSheetByName("default sheet"));
SpreadsheetApp.getActiveSpreadsheet().duplicateActiveSheet();
ss.setActiveSheet(ss.getSheetByName("Copy of default sheet"));
SpreadsheetApp.getActiveSpreadsheet().renameActiveSheet(getName);
SpreadsheetApp.getActiveSheet().getRange('B3').setValue(getEmail);
SpreadsheetApp.getActiveSheet().getRange('C3').setValue(getName);
}
理論上,你的表單應該包含一個Submit/Post按鈕。該按鈕應該有一個服務器處理程序,該按鈕在單擊按鈕時執行。您可以從處理程序調用您的代碼。 – megabyte1024 2012-07-31 14:26:08