Embedded是我需要为所工作的学校系统中的某些老师做些什么的图像。A列中有得分,而B列中我需要能够对得分进行排名。等级编号从1开始,并且应保持不变,直到得分值发生变化,然后再递增1。我知道我需要某种循环结构,但是我不知道如何在Google表格或Google应用程序脚本中执行此操作。有人知道如何使用循环吗?谢谢!
答案 0 :(得分:1)
尝试一下:
function scoreRanking() {
var ss=SpreadsheetApp.getActive();
var sh=ss.getSheetByName('Sheet1');
var rg=sh.getRange(2,1,sh.getLastRow()-1,2);
var vA=rg.getValues();
var rObj={};
var s=1;//Initial rank value
for(var i=0;i<vA.length;i++) {
if(rObj.hasOwnProperty([vA[i][0]])) {
vA[i][1]=rObj[vA[i][0]];
}else{
rObj[vA[i][0]]=s++;
vA[i][1]=rObj[vA[i][0]];
}
}
rg.setValues(vA);
}