我想在单元格中输入值时自动对Google表格中的值进行排序。以下是一个例子:
| S. No. | Task | Value |
| 1 | Task 1 | $$ |
| 2 | Task 2 | $$$ |
| 3 | Task 3 | $$$$ |
| | | |
在上表中,只要我为任务3输入值字段,我希望它转到顶部,第一个应该到达结尾。我不希望每次都通过排序来手动实现。
答案 0 :(得分:1)
与Chris Hick的建议类似,您可以按任何顺序输入数据,并将副本分类以适应。由于您的示例显示顺序良好(升序),我假设您希望它按顺序降序(S. No.
)并且在A1中:
=query(A:C,"Select * where A is not NULL order by A desc")
在A5中添加几个条目9
,在A6中添加8
,结果列表将被订购9,8,3,2,1。
答案 1 :(得分:1)
您可以使用脚本自动对表格进行排序。为此,请转到工具>脚本编辑器。这将打开一个新窗口。
删除您看到的代码并将以下内容粘贴到:
function onEdit(event) {
var sh = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var cellColumn = sh.getActiveRange().getColumnIndex();
var currentSheet = sh.getName();
if ((cellColumn == 3) && currentSheet == "enter sheet name here") {
var range = sh.getRange("A2:C");
range.sort({column:2, ascending:false});
}
}
您需要将“在此处输入工作表名称”更改为您要分类的工作表的名称。确保将引号留在。
如果要更改排序以使其升序,请更改
中的最后一行ascending:false
到
ascending:true
如果要更改已排序数据的范围,则可以在上面的行中执行此操作。目前,它设置为对范围A2:C
进行排序。