【发布时间】:2021-05-15 13:53:19
【问题描述】:
我们有一个电子表格,它会根据在 T 列的单元格中输入的信息自动为每一行分配状态。状态显示在 M 列,显示打开、未决和关闭。我正在使用以下代码:
// Sheet the data is on.
var SHEET = "DLT";
// The value that will cause the row to hide.
var VALUE = "Closed"
// The column we will be using
var COLUMN_NUMBER = 14
function onEdit (e) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var activeSheet = ss.getActiveSheet();
//Ensure on correct sheet.
if(SHEET == activeSheet.getName()){
var cell = ss.getActiveCell()
var cellValue = cell.getValue();
//Ensure we are looking at the correct column.
if(cell.getColumn() == COLUMN_NUMBER){
//If the cell matched the value we require,hide the row.
if(cellValue == VALUE){
activeSheet.hideRow(cell);
};
};
};
}
我知道代码有错误,因为一旦在 T 列上输入信息,电子表格就会自动更改列 M 上的“statuts”值,并且此代码不起作用,因为从技术上讲 @987654322 @bit 告诉脚本查看当前正在编辑的单元格(在这种情况下,它将是列 T 上的单元格,因为这是在触发电子表格更改状态关闭之前要填充的最后一个字段。)
疑问是,如何使脚本仍然查看正在编辑的当前行,但考虑列 M 上的值而不是活动单元格。
【问题讨论】:
标签: google-chrome google-apps-script google-sheets excel-formula google-sheets-formula