Google 应用脚本:返回 2 个两个范围之间唯一值的函数

Google App script: Function to return an arrray of unique values between 2 two ranges

本文关键字:范围 两个 之间 唯一 函数 脚本 应用 返回 Google      更新时间:2023-09-26

我正在尝试编写一个自定义函数,当比较两个数组时,该函数将返回所有唯一值的数组。这是我所拥有的,它不起作用:

function getUniqueCells(range1, range2) {
  var sheet = SpreadsheetApp.getActiveSheet();
  var range1 = sheet.getRange(range1);
  var range2 = sheet.getRange(range2);    
  var range1Val = range1.getValues();    
  var range2Val = range2.getValues();  
  var uniquesArr = [];    
  for (var i = 0; i <= range1Val.length; i++) {    
    for(var u = 0; u <= range2Val.length; i++){
      if(range1Val[i] === range2Val[u]) {
        break;
      } else if((u + 1) === range2Val.length){
        uniquesArr.push(range1Val[i]);
      };
    };
  }; 
  return uniquesArr;
}

有没有办法不出现"执行自定义函数的内部错误"错误?

第二个

for 循环存在问题。

for(var u = 0; u <= range2Val.length;i++){

它应该是 for(var u = 0; u <= range2Val.length;u++){

您无法通过range1Val[i] === range2Val[u]进行检查。因为它们是数组。

我有同样的问题。 在这里找到答案:

比较 Google 电子表格中的行