Google apps script 数据输入表单,用于在google工作表中为每个指定列选择下一个打开的行
我试图创建一个数据输入表单,将数据提交到数据表的第一个打开行。问题是数据表的其中一列中有公式,所以它不是真正的空。这会导致当前脚本考虑带有公式的单元格,并仅选择其后面的行 你们能帮我解决这个问题吗 当前脚本如下所示:Google apps script 数据输入表单,用于在google工作表中为每个指定列选择下一个打开的行,google-apps-script,Google Apps Script,我试图创建一个数据输入表单,将数据提交到数据表的第一个打开行。问题是数据表的其中一列中有公式,所以它不是真正的空。这会导致当前脚本考虑带有公式的单元格,并仅选择其后面的行 你们能帮我解决这个问题吗 当前脚本如下所示: function submitData() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var formSS = ss.getSheetByName("FORM"); //For
function submitData() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var formSS = ss.getSheetByName("FORM"); //Form Sheet
var datasheet = ss.getSheetByName("DATA"); //Data Sheet
//Input Values
var values = [[formSS.getRange("D4").getValue(),
formSS.getRange("D8").getValue(),
formSS.getRange("D12").getValue(),
formSS.getRange("D16").getValue(),
formSS.getRange("D20").getValue(),
formSS.getRange("D24").getValue(),
formSS.getRange("D28").getValue(),
formSS.getRange("L32").getValue()]];
datasheet.getRange(datasheet.getLastRow()+1, 1, 1, 8).setValues(values);
}
通过计算行内容,可以找到第一个空闲行
样品
var-freeRow;
var columnI=datasheet.getRange(“I1:I”+datasheet.getLastRow()).getDisplayValues().flat();
对于(变量i=0;i
此外,您使用的是表单提交
触发器,您使用的是
样品
函数提交数据(e){
var范围=e范围;
var row=range.getRow();
//这是插入了最新表单响应的行-根据需要使用它
...
}
您可以通过计算行内容找到第一个空闲行
样品
var-freeRow;
var columnI=datasheet.getRange(“I1:I”+datasheet.getLastRow()).getDisplayValues().flat();
对于(变量i=0;i
此外,您使用的是表单提交
触发器,您使用的是
样品
函数提交数据(e){
var范围=e范围;
var row=range.getRow();
//这是插入了最新表单响应的行-根据需要使用它
...
}
我不确定是否理解这会导致当前脚本考虑带公式的单元格,并且只选择其后面的行。
。是否要将值设置到第一个空行中?即使该行包含公式?是,表单将填充数据表列a到H和K。列I中有一个公式,用于计算未完成作业的天数。公式应采用正在填充的数据并计算所述信息。但现在,公式被视为一个被占用的单元格,脚本将选择它下面的下一行。如果有助于澄清,我可以发送一份文档副本。我不确定我是否理解这会导致当前脚本考虑带公式的单元格,并且只选择其后面的行。
。是否要将值设置到第一个空行中?即使该行包含公式?是,表单将填充数据表列a到H和K。列I中有一个公式,用于计算未完成作业的天数。公式应采用正在填充的数据并计算所述信息。但现在,公式被视为一个被占用的单元格,脚本将选择它下面的下一行。如果有助于澄清的话,我可以发送一份文件的副本。啊,哇,效果很好。不过,我正试图确切地理解它是如何工作的。你能给我解释一下吗。(对不起,我还在学习)代码循环遍历列i的所有单元格并检查其内容。如果内容为空(columnI[i]==“
),则该行被视为空闲。我建议你看一看这个和那个,以获得更深入的理解。啊,哇,这真是太好了。不过,我正试图确切地理解它是如何工作的。你能给我解释一下吗。(对不起,我还在学习)代码循环遍历列i的所有单元格并检查其内容。如果内容为空(columnI[i]==“
),则该行被视为空闲。我建议你看一看和,以获得更深入的理解。