Javascript 如何发送谷歌电子表格输入,如果有公式则忽略单元格
单击提交时,我希望输入表单将数据发送到列A、B、E和F 因为在C列和D列中有公式。。 有人能帮我吗。。 谢谢Javascript 如何发送谷歌电子表格输入,如果有公式则忽略单元格,javascript,Javascript,单击提交时,我希望输入表单将数据发送到列A、B、E和F 因为在C列和D列中有公式。。 有人能帮我吗。。 谢谢 来源:作为一种快速解决方案,您可以更改代码中的函数processForm()。gs: //PROCESS FORM function processForm(formObject){ var sheet = SpreadsheetApp.getActiveSheet(); // set first two cells (columns A and B) of the last
来源:作为一种快速解决方案,您可以更改代码中的函数
processForm()
。gs:
//PROCESS FORM
function processForm(formObject){
var sheet = SpreadsheetApp.getActiveSheet();
// set first two cells (columns A and B) of the last row
sheet.appendRow([formObject.first_name, formObject.last_name]);
// fil cell #4 (column D) in the row
sheet.getRange(sheet.getLastRow(),4).setValue(formObject.email);
}
同样,您可以将公式放入单元格#3(C列)。我相信还有更好的解决方案,这取决于你的目标
函数的更新版本。要在表中“a”列中第一个非空单元格后插入新单元格,请执行以下操作:
//PROCESS FORM
function processForm(formObject){
var sheet = SpreadsheetApp.getActiveSheet(); // get sheet
var col = sheet.getRange("A:A").getValues(); // get column A
var row = col.findIndex(c => c[0] == "") + 1; // get the row num
sheet.getRange(row,1).setValue(formObject.first_name); // set cell 1
sheet.getRange(row,2).setValue(formObject.last_name); // set cell 2
sheet.getRange(row,4).setValue(formObject.email); // set cell 4
}
谢谢你的回答。但现在还有一个问题(见图1)
在pic1中,点击提交时,不填写第3行数据
我想要的结果如图2所示
单击“提交”时,数据结果显示在第3行
下一次提交,第4行的数据结果
下一次提交,第5行的数据结果
etc当然,方法
appendRow
在现有表的末尾添加行。如果需要在表中添加行(例如在“A”列的末尾),则必须使用另一种方法。需要获取范围“A:A”,才能找到最后一个非空单元格并将数据插入下一行。我会告诉你怎么做的。@Yuri Khristich,完成了。无论如何,谢谢你的功能。我在谷歌上寻找答案已经5天了。。。最后谢谢兄弟