我编写了这个脚本,通过按Enter键从左到右逐步输入数据来连续输入数据。
代码:
function onEdit(e) {
var cell,
newCell,
col,
sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
col = sheet.getActiveCell();
newCell = col.getColumn();
if (newCell == 7.0) {
//Processed last column, move to column A
cell = sheet.getActiveCell();
cell = cell.offset(1, -6);
sheet.setActiveSelection(cell);
} else {
cell = sheet.getActiveCell();
cell = cell.offset(0, 1);
sheet.setActiveSelection(cell);
}
}
它一直有效,直到我到达一个我需要留空的单元格。将单元格留空时按Enter键不会触发onEdit()事件。我可以通过调整先前的单元格offset()方法跳过始终为空的列。但是,我无法想出一种方法来调整有时是空白的单元格,有时会包含数据。
我知道如果我只是在单元格中输入空格,脚本就会起作用。我不认为在单元格中看到空白的空格会损害我的任何工作表,但我真的想用代码来解决这个问题。
谢谢,吉姆
答案 0 :(得分:0)
您可以测试空格的单元格值:
maxcut.add_constraint(pic.tools.diag_vect(Y)==1)
如果没有编辑单元格,按下Enter键时,触发器无法检测到。在这种情况下,按空格键,然后按Enter键可能是最佳选择。如果发现活动单元格有空格,则可以立即删除该空格。
if (activeCell.getValue() === " ") {
activeCell.setValue("");