【问题标题】:How to loop through each cell in column?如何遍历列中的每个单元格?
【发布时间】:2021-08-21 06:08:19
【问题描述】:
该脚本只是将 1 加到特定列中的单元格,但我希望它以设置延迟对特定列中的每个单元格 +1。
这是我到目前为止收集到的,但需要额外的步骤。
function plus() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var yesCount = ss.getRange("B4");
var yesAdd = yesCount.getValue();
if(yesAdd != ""){
yesCount.setValue(yesAdd+1);
Utilities.sleep(1000);
}
}
基本上 B4 应该是整个 B 列,我想逐步遍历每个(非空)单元格,等待一两秒,然后继续下一个单元格。
【问题讨论】:
标签:
google-apps-script
google-sheets-formula
【解决方案1】:
请注意,电子表格可能不会在您每次更改值时立即更新。
function plus() {
const row = 4;
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheetByName('Sheet Name');
const rows = sheet.getLastRow() - row + 1;
const range = sheet.getRange(row, 2, rows, 1);
const values = range.getValues().flat();
const matches = {};
values.forEach((value, i) => {
if (value !== '') {
sheet.getRange(row + i, 2).setValue(value + 1);
Utilities.sleep(1000);
}
});
}