![](/img/trans.png)
[英]How to clear/delete data after a given row index in Google Spreadsheets
[英]How to create a new row at the end of an existing sheet in Google Spreadsheets after completing a Google Form?
我正在嘗試將鏈接的Google表單中的回復保存到現有的Google表格中。 更准確地說,電子表格顯示了雇員的休假請求,雇員的請假原因,請求的天數,請求的日期,經理的姓名等。基本上,表單會向雇員詢問這些信息。
謝謝!
我在這里想要實現的是將響應信息保存到已經創建的電子表格中。 根據Google的文檔 ,僅有的兩種選擇是:
1)創建一個新的電子表格:為Google表格中的回復創建一個電子表格
2)選擇現有電子表格:從Google表格中的現有電子表格中進行選擇以存儲回復
對於選項#2,我可以將響應保存在同一電子表格中,但可以將其保存在新工作表中。 我正在嘗試將響應保存在同一張紙中。
我知道Google表單具有腳本編輯器。 是否可以運行將響應發送到電子表格的函數? 也許是這樣的嗎?
function sendToSpreadSheet(e)
{
var ss = SpreadsheetApp.openById("abc1234567");
// Send response to spreadsheet
// Populate cells accordingly
}
我在Google表單方面的經驗不足,因此不確定如何解決此問題。 任何建議將不勝感激。
嘗試這個:
您必須提供電子表格ID和SheetName。 並為電子表格創建一個onFormSubmit觸發器。
function saveResponse(e) {
SpreadsheetApp.getActive().getSheetByName('SheetName').append(e.values);
}
要么
function saveResponse(e) {
SpreadsheetApp.openById('id').getSheetByName('SheetName').append(e.values);
}
您可以使用以下內容創建觸發器:
function createSetResponseTrigger(){
createTrigger('setResponse');
}
function createTrigger(funcname) {
if(!isTrigger(funcname)) {
ScriptApp.newTrigger(funcname).forSpreadsheet(SpreadsheetApp.getActive()).onFormSubmit().create();
}
}
和這個
function isTrigger(funcName){
var r=false;
if(funcName){
var allTriggers=ScriptApp.getProjectTriggers();
for(var i=0;i<allTriggers.length;i++){
if(funcName==allTriggers[i].getHandlerFunction()){
r=true;
break;
}
}
}
return r;
}
或者您也可以使用“編輯菜單” /“當前項目觸發器”手動創建它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.