编写计数程序以查找重复次数

问题描述 投票:1回答:1

我正在编写代码以计算B列中的持续时间重复的次数。根据我的逻辑编写代码后,我仍然遇到错误或没有输出。这是我编写的应用脚本代码。帮帮我。

function count() {
    var data = SpreadsheetApp.getActive();
    var sheet = data.getSheetByName("Sheet4");
    var lastRow = sheet.getLastRow();
    var sh = sheet.getRange('B1:B' + lastRow);
    var cell = sh.getValues();
    var count = 0;
    for (var i = 0; i < lastRow; j++) {
        var column2 = cell[i][1];
        for (var j = 0; j < i; j++) {
            var column4 = cell[j][1];
            if (column4 == column2) {
                count++;
            }
        }
        sheet.getRange('F' + (i + 1).toString()).setValue(count);
    }
}

input data这是预期的输出,而不是F列,我将样本输出放入C列sample output

google-apps-script google-sheets appscript
1个回答
0
投票

问题:

  • 外循环的增量变量不变。

    for(var i = 0; i 我从不改变=> / j ++)

  • 日期/时间被检索为JavaScript对象,不能与==进行比较:if(column4 == column2){//无法比较日期对象

解决方案:

  • 增加for循环中的所有变量
  • 改为比较日期对象的值

Snips:

for(var i = 0; i ..../如果(第4栏-第2列=== 0){@请参见Compare two dates with JavaScript

© www.soinside.com 2019 - 2024. All rights reserved.