我有下面的电子表格,我想AutoFill的人的名字。问题是名称之间有空行。每个名称都与一个sku2保持一致,并且需要与所有位置保持一致。最多可以有10个空白行(取决于位置的数量)。
如果我可以循环这个,也许
function LoopTillLr() {
var spreadsheet = SpreadsheetApp.getActive();
spreadsheet.getRange('A2').activate();
spreadsheet.getActiveRange().autoFillToNeighbor(SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getCurrentCell().getNextDataCell(SpreadsheetApp.Direction.DOWN).activate();
};感谢任何帮助

发布于 2020-05-14 22:52:40
如果您只想针对变量位置值复制Name值,请使用以下脚本:
function myFunction() {
var ss = SpreadsheetApp.getActiveSheet();
var lastRow = ss.getDataRange().getLastRow();
for (var i = 1; i < lastRow+1; i++) {
if (ss.getRange(i,1).getValue() == "") {
var value = ss.getRange(i-1,1).getValue();
ss.getRange(i,1).setValue(value);
}
}
}确保A2不为空,否则脚本将失败。
发布于 2020-05-15 03:52:35
如果记录很多,可以创建一个函数并运行它。下面的操作将一直持续到工作表的末尾,因此请确保删除靠近末尾的所有不需要的行,或者调整第二行的范围。
function autoFillDown(){
const range = SpreadsheetApp.getActiveSheet().getRange("A:A");
const rows = range.getValues();
let outputArray = [];
rows.forEach( row => {
// if it contains a name, leave it
if( row[0].length > 1){
outputArray.push( [row[0]] )
// otherwise replace it with the value above it
} else {
outputArray.push( [outputArray[outputArray.length-1]] );
}
});
range.setValues( outputArray );
}https://stackoverflow.com/questions/61797299
复制相似问题