Google表格 - 每周最低点数

时间:2015-12-02 10:05:20

标签: google-sheets formula

我有一个谷歌电子表格列表,有两列(200 +行和计数),如下所示:

Monday    495,636,792
Tuesday 891,243,349
Wednesday   465,844,622
Thursday    425,461,946
Friday  412,401,861
Saturday    424,297,897
Sunday  462,782,430
Monday  454,216,725
Tuesday 1,661,014,800
Wednesday   502,935,706
Thursday    493,009,684
Friday  464,568,911
Saturday    670,963,371
Sunday  491,847,275

(我还有一个常规日期栏,不仅仅是工作日 - 如果需要的话)

我想计算每周最低数量。 这基本上意味着我想要一个看起来像这样的其他列表:

Monday  10
Tuesday 15
Wednesday 20
Thursday    0
Friday  9
Saturday    7
Sunday  25

星期一 - 10 意味着,有10个星期,星期一是那个星期中最小的数字。

1 个答案:

答案 0 :(得分:1)

抱歉,我不明白。这很难。请参阅下面的更正代码样本表也已更正。

function minDays() {
  var s= SpreadsheetApp.getActiveSpreadsheet().getSheets()[1];
  var ss = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
  var clr = s.getRange(2,2,7,1).clear()
  var lr = ss.getLastRow()-1
  var slr = 7
  var sr = 2
  var weeks = lr/7
  for(w=1;w<weeks+1;w++){
  if(w==1){sr=sr,slr==slr} else {sr=sr+7,slr=slr+7}
     var sVal = ss.getRange(sr,1,slr,2).getValues();
     var minVal =sVal[1][1]
     var minDay =sVal[0][0]
    for (var i = 1; i < 7;i++) { 
      if(sVal[i-1][1]<=minVal){minVal=sVal[i-1][1],minDay=sVal[i-1][0]} else{minVal=minVal,minDay=minDay}
        var fVal=minVal
        var fday = minDay
    }
  var target=s.getRange(2,1,7,2).getValues();
  for(var n in target){
    var row = target[n][0]
   if(row.toString().match(fday)){
    var cnt = target[n][1].valueOf()+1
    target[n][1]=cnt
    }}
  var rDay =s.getRange(2, 1,7,2)
  var data=rDay.getValues()
  rDay.setValues(target)
}}

https://docs.google.com/spreadsheets/d/1AFHeNKeonLDuuOyg7GaTvMB4asvnYHbK2C0WAEbfSsI/edit?usp=sharing