在Google Apps Script (GAS) 中,可以通过循环遍历两个数组,并使用条件判断来比较两个数组的值,并获取匹配值的行号。下面是一个示例代码:
function compareArraysAndGetMatchingRowNumbers() {
var sheet1 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1"); // 修改为你的表格名称
var sheet2 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet2"); // 修改为你的表格名称
var array1 = sheet1.getDataRange().getValues(); // 获取第一个数组的所有值
var array2 = sheet2.getDataRange().getValues(); // 获取第二个数组的所有值
var matchingRowNumbers = []; // 用于存储匹配值的行号
for (var i = 0; i < array1.length; i++) {
for (var j = 0; j < array2.length; j++) {
if (array1[i].toString() === array2[j].toString()) { // 使用 toString() 方法将数组值转为字符串进行比较
matchingRowNumbers.push(i + 1); // 将匹配的行号加入数组(加1是因为行号从1开始)
break; // 如果找到匹配值,则跳出内层循环
}
}
}
Logger.log("匹配值的行号为:" + matchingRowNumbers.join(", ")); // 打印匹配值的行号,使用逗号分隔
}
在这个示例中,我们首先获取两个表格的所有值,并存储在 array1
和 array2
中。然后,通过双重循环遍历这两个数组,使用 toString()
方法将数组值转为字符串进行比较。如果找到匹配值,则将匹配的行号加入 matchingRowNumbers
数组中。最后,通过 Logger.log()
方法打印出匹配值的行号。
请注意,你需要根据实际情况修改代码中的表格名称和数据范围。另外,请确保你已经在Google Sheets中创建了两个名为 "Sheet1" 和 "Sheet2" 的表格,并填充了数据。