javascript 一次比较四个列,而它们的顺序和长度不同

djp7away  于 2023-05-16  发布在  Java
关注(0)|答案(1)|浏览(99)

我正在利用谷歌表比较检查号码和金额,我想对任何传入的检查号码审查是不正确的,在我这边,同时也确保检查号码确实匹配有匹配的金额。我认为我的代码几乎是工作,但我不确定我错过了什么。它能正确检测不正确的支票号码(C列),但不能检测不正确的支票金额(D列)。我需要能够使用以下逻辑写入控制台:
1.当在单独选项卡/工作表的C列中未找到C列值时
1.当在另一张纸上的C列和D列中找不到C列和D列时
1.当两张纸上的C列匹配,但D列中的金额不同时。
控制台日志的预期结果为:C54行支票编号不一致或C42行支票金额不一致
任何关于我为实现这一目标所缺少的东西的见解都将不胜感激。

function CHK_BothChecks_V3() {

  const ss = SpreadsheetApp.getActive();
  const s1 = ss.getSheetByName("OpenCheckDataBase");
  const s2 = ss.getSheetByName("IncomingChecks");

    var range1 = s1.getRange("C1:D").getValues();
    var range2 = s2.getRange("C1:D").getValues();
    var correctChecks = 0;
    var invalidChecks = 0;
    var invalidAmounts = 0;

    for(var i = 0; i < range1.length;i++) {
        if(range1[i][0] == range2[i][0]) {
          correctChecks++;
        }
               else if(range1[i][0] !== range2[i][0]) {
          var index = s1.getRange(i+1, 2).getRow();
          invalidChecks++; 
          console.log(index); /** This is the row locations of where inconsistant check numbers will show up */
        }

    
    }
        console.log("Total number of valid check numbers is " + correctChecks);
        console.log("Total number of invalid check numbers is " + invalidChecks);
        console.log("Total number of invalid amounts is " + invalidAmounts);

 }
0x6upsns

0x6upsns1#

试着这样做:

function CHK_BothChecks_V3() {
  const ss = SpreadsheetApp.getActive();
  const sh1 = ss.getSheetByName("OpenCheckDataBase");
  const sh2 = ss.getSheetByName("IncomingChecks");
  var rg1 = sh1.getRange("C1:D" + sh1.getLastRow()).getValues();
  var rg2 = sh2.getRange("C1:D" + sh2.getLastRow()).getValues();
  var correctChecks = 0;
  var invalidChecks = 0;
  var invalidAmounts = 0;
  for (var i = 0; i < rg1.length; i++) {
    if (rg1[i][0] == rg2[i][0]) {
      correctChecks++;
    } else if (rg1[i][0] !== rg2[i][0]) {
      var index = sh1.getRange(i + 1, 2).getRow();
      invalidChecks++;
      console.log(index); 
    }
  }
  console.log("Total number of valid check numbers is " + correctChecks);
  console.log("Total number of invalid check numbers is " + invalidChecks);
  console.log("Total number of invalid amounts is " + invalidAmounts);
}

如果这没有帮助,那么请张贴一些您的数据,并解释您正在寻找什么。请使用表格发布数据,以便可以复制和粘贴

相关问题