Fjo*_*ott 4 google-sheets google-apps-script
在此谷歌表格功能中,主键会在更改时自动添加到第一列。此函数的问题在于,当添加新行时,尽管该行中的其他单元格为空白,但下面的行也会获得主键。
如何修改此函数,以便仅在右侧第一个单元格(单元格 B)不为空时才添加主键?
function myFunction() {
var AUTOINC_COLUMN = 0;
var HEADER_ROW_COUNT = 1;
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var worksheet = spreadsheet.getSheetByName("Sheet1");
var rows = worksheet.getDataRange().getNumRows();
var vals = worksheet.getSheetValues(1, 1, rows+1, 2);
for (var row = HEADER_ROW_COUNT; row < vals.length; row++) {
try {
var id = vals[row][AUTOINC_COLUMN];
Logger.log(id);Logger.log((""+id).length ===0);
if ((""+id).length === 0) {
// Here the columns & rows are 1-indexed
worksheet.getRange(row+1, AUTOINC_COLUMN+1).setValue(row);
}
} catch(ex) {
// Keep calm and carry on
}
}
}
Run Code Online (Sandbox Code Playgroud)
J. *_*G. 5
我不会为此使用脚本,只需在 A2 中输入此内容,然后一直向下复制即可。在单元格 A1 中输入 0(或 100,无论您希望它从哪里开始)。
=if(B2="","",A1+1)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15649 次 |
| 最近记录: |