【发布时间】:2020-03-31 13:38:26
【问题描述】:
以下代码成功地将工作表 2 的 A 列与工作表 1 的 B 列进行比较,任何匹配项都会将整行复制到工作表 3。但是我需要对比较工作表 2 的 A 列的代码进行非常轻微的更改到表 1 的 N 列而不是 B 列。有人可以帮助我更改此代码吗? 这是上一篇文章的链接Java script optimization for a google apps script
function copyRowtoSheet3() {
var spreadsheetId = "1Aw11LiKzyezfrTQIuTsJPhUFtz8RPqLCc8FlIiy0ZlE";
var ss = SpreadsheetApp.openById(spreadsheetId);
var s1 = ss.getSheetByName('Sheet1');
var s2 = ss.getSheetByName('Sheet2');
// 1. Retrieve values from "Sheet1" and "Sheet2",
var values1 = s1.getDataRange().getValues();
var values2 = s2.getRange(1, 1, s2.getLastRow(), 1).getValues();
// 2. Create an object using values2.
var obj = values2.reduce((o, [e]) => {
o[e] = null;
return o;
}, {});
// 3. Create resultArray using values1 and obj.
var resultArray = values1.filter(([,b]) => b in obj);
// 4. Put resultArray to Sheet3.
Sheets.Spreadsheets.Values.update({values: resultArray}, spreadsheetId, "Sheet3", {valueInputOption: "USER_ENTERED"});
}
我尝试的是:
var resultArray = values1.filter(([,n]) => n in obj);
然而这并没有奏效。有什么想法吗?
【问题讨论】:
标签: javascript google-apps-script google-sheets google-sheets-api