gpt4 book ai didi

javascript - Google Apps 脚本计算 2 列中相同单元格的数量

转载 作者:行者123 更新时间:2023-11-30 15:14:09 25 4
gpt4 key购买 nike

所以我在 google 电子表格中有 2 列,A 和 B,我想逐行比较它们(A1 到 B1,A2 到 B2,等等),最后计算具有完全相同值的单元格的数量(可以是字符串或整数,但必须相同)并将其放入另一个单元格,例如 D1。这是我到目前为止得到的,但它似乎没有做任何事情,也没有返回任何错误。

function compare() {
var sss = SpreadsheetApp.getActiveSpreadsheet();
var ss = sss.getSheetByName('theSheetINeed');
var range1 = ss.getRange('A1:A'); //the first column
var data1 = range1.getValues();
var range2 = ss.getRange('B2:B'); //the second column
var data2 = range2.getValues();
var count = []; //to count the number of match
for(var i =0;i 'smaller than' data1.length; i++){ //somehow i cant use '<'
var abc = data1[i];
var def = data2[i];
if(abc == def){
count += count;
};
};
ss.getRange('D1').setValue(count.length);
}

编辑:所以我的代码实际上做了一些事情,它每次都返回 0...

最佳答案

修改点:

  • getValues() 检索到的值是二维数组。
  • count被定义为一个数组。但它不用作数组。
  • i 'smaller than' data1.lengthi<data1.length .
  • A 列和 B 列的起始行分别为 1、2。
  • 包含没有值的单元格。所以当这些单元格相互比较时,值变得相同。 (如果您想比较此类单元格,请从以下脚本中删除 && abc && def。)

修改后的脚本:

您的脚本可以通过修改以上几点来编写,如下所示。

function compare() {
var sss = SpreadsheetApp.getActiveSpreadsheet();
var ss = sss.getSheetByName('theSheetINeed');
var range1 = ss.getRange('A1:A'); //the first column
var data1 = range1.getValues();
var range2 = ss.getRange('B2:B'); //the second column
var data2 = range2.getValues();
var count = []; //to count the number of match
for(var i=0; i<data1.length-1; i++){ //somehow i cant use '<'
var abc = data1[i][0];
var def = data2[i][0];
if(abc == def && abc && def){
count.push(abc);
};
};
ss.getRange('D1').setValue(count.length);
}

如果我误解了你的问题,我很抱歉。

关于javascript - Google Apps 脚本计算 2 列中相同单元格的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44714072/

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