gpt4 book ai didi

javascript - 使用谷歌脚本达到一定数量时显示值

转载 作者:行者123 更新时间:2023-12-02 23:18:20 25 4
gpt4 key购买 nike

我有一个包含日期列的 Google 工作表,如果我的列上的值达到 4 次(例如 2019 年 7 月 1 日),我无法在单元格中显示或设置该值

      Date Column
Row1: July 1, 2019
Row2: July 2, 2019
Row3: July 1, 2019
Row4: July 4, 2019
Row5: July 1, 2019
Row6: July 1, 2019
Row7: July 5, 2019

我在谷歌脚本中尝试了以下代码:

  function countDate(){

var ss = SpreadsheetApp.openByUrl(url);
var ws = ss.getSheetByName("Test_Data");
var dateRg = ws.getRange(1, 9, ws.getLastRow(), 1).getValues();

for (var i =1; i < dateRg.length; i++){
var dateTest = dateRg[i];

if (dateTest > 5){
ws.getRange(2,4).setValue(dateTest);
}
}

在上面的示例中,我希望电子表格中的一个单元格具有值“2019 年 7 月 1 日”,因为它在列中出现了 4 次。预先感谢您。

最佳答案

这是一种可能的方法。计算每个日期的出现次数,将计数存储在对象中,然后找到出现次数最多的日期。

function countDate(){  
var ss = SpreadsheetApp.openByUrl(url);
var ws = ss.getSheetByName("Test_Data");
var dateRg = ws.getRange(1, 1, ws.getLastRow(), 1).getDisplayValues();
var data = {}
for (var i =0; i < dateRg.length; i++){
data[dateRg[i]] = data[dateRg[i]] || 0;
data[dateRg[i]]++;
}
var max = Object.keys(data).reduce(function(a, b){ return data[a] > data[b] ? a : b });
ws.getRange(2,4).setValue(max);
}

关于javascript - 使用谷歌脚本达到一定数量时显示值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57068956/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com