[英]How to inset automatic data in Cells using app script in google sheet?
`
var blankRow=datasheet.getLastRow()+1;
datasheet.getRange(blankRow,6).setValue(shUserForm.getRange("B3").getValue());
datasheet.getRange(blankRow,5).setValue(shUserForm.getRange("F3").getValue());
datasheet.getRange(blankRow,7).setValue(shUserForm.getRange("D3").getValue());
datasheet.getRange(blankRow,8).setValue(shUserForm.getRange("F4").getValue());
/////////////////////////////////////////////////////////////////////////////////
datasheet.getRange(blankRow,2).setValue(shUserForm.getRange("B7").getValue());
datasheet.getRange(blankRow,3).setValue(shUserForm.getRange("E7").getValue());
datasheet.getRange(blankRow,4).setValue(shUserForm.getRange("F7").getValue());
if(shUserForm.getRange("C7").isBlank()==false){
var blankRow2=datasheet.getLastRow()+1;
datasheet.getRange(blankRow2,6).setValue(shUserForm.getRange("B3").getValue());
datasheet.getRange(blankRow2,5).setValue(shUserForm.getRange("F3").getValue());
datasheet.getRange(blankRow2,7).setValue(shUserForm.getRange("D3").getValue());
datasheet.getRange(blankRow2,8).setValue(shUserForm.getRange("F4").getValue());
/////////////////////////////////////////////////////////////////////////////////
datasheet.getRange(blankRow2,2).setValue(shUserForm.getRange("C7").getValue());
datasheet.getRange(blankRow2,3).setValue(shUserForm.getRange("E7").getValue());
datasheet.getRange(blankRow2,4).setValue(stock.getRange("T3").getValue());
}
if(shUserForm.getRange("D7").isBlank()==false){
var blankRow3=datasheet.getLastRow()+1;
datasheet.getRange(blankRow3,6).setValue(shUserForm.getRange("B3").getValue());
datasheet.getRange(blankRow3,5).setValue(shUserForm.getRange("F3").getValue());
datasheet.getRange(blankRow3,7).setValue(shUserForm.getRange("D3").getValue());
datasheet.getRange(blankRow3,8).setValue(shUserForm.getRange("F4").getValue());
/////////////////////////////////////////////////////////////////////////////////
datasheet.getRange(blankRow3,2).setValue(shUserForm.getRange("D7").getValue());
datasheet.getRange(blankRow3,3).setValue(shUserForm.getRange("E7").getValue());
datasheet.getRange(blankRow3,4).setValue(stock.getRange("U3").getValue());
}
`
我已经使用此代码将第一行数据从工作表插入到另一张工作表,我需要插入更多行而不重复最后一个代码。
使用Sheet.getRangeList()
和Array
方法,如下所示:
let firstCellA1 = 'B7';
['D7', 'C7', 'B7',].some(rangeA1 => {
if (shUserForm.getRange(rangeA1).getDisplayValue()) {
firstCellA1 = rangeA1;
return true;
}
});
const data = shUserForm
.getRangeList([firstCellA1, 'E7', 'F7', 'F3', 'B3', 'D3', 'F4',])
.getRanges()
.map(range => range.getValue());
datasheet.appendRow([new Date()].concat(data));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.