我想将 E6:I6 的内容复制到 E13:I17 范围内的第一个空行。然后脚本应删除单元格 E6 和 G6 的内容。到目前为止我的代码看起来像这样:
function copyAndDelete() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var source = ss.getRange('E6:I6');
var range1 = ss.getRange('E6');
var range2 = ss.getRange('G6');
var l = ss.getDataRange().getValues().length;
source.copyTo(ss.getRange('E13:I13'), {contentsOnly: true});
range1.clearContent();
range2.clearContent();
}
任何人都可以帮我吗?非常感谢!
答案 0 :(得分:0)
试试这段代码:
function copyAndDelete() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var source = ss.getRange('E6:I6');
var range1 = ss.getRange('E6');
var range2 = ss.getRange('G6');
var vals = ss.getRange("E13:I17").getValues();
var destinationRow = 13;
for (var i in vals){
var rowVal = vals[i].join();
rowVal = rowVal.replace(/,/gm,"");
Logger.log(rowVal);
if(rowVal==""){
destinationRow=13+Number(i);
ss.getRange("E"+destinationRow+":I"+destinationRow).setValues(source.getValues());
range1.clearContent();
range2.clearContent();
return;
}
}
throw("no empty row found :-(");
}
当 E13:I17 中没有空行时,您没有指定要执行的操作,因此我决定抛出错误,在这种情况下不执行复制操作。