gpt4 book ai didi

javascript - 比较两列,如果匹配,则粘贴匹配值

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

这看起来应该非常简单,但我真的无法通过 Google Script 找到解决方案。我想比较 Import 中 SKU (A) 中的所有单元格与 Pricelist 中的 SKU (A),如果匹配,则将匹配的 SKU 粘贴到工作表 3 (A) 中。

通常我会通过索引匹配来完成此操作,但我需要使用 Google Script 来完成。

我尝试了以下方法,这适用于检查价格表 A1:A100 中整个范围的单个单元格 (A81),但在对照范围检查范围时我无法理解它。

function checkProduct() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var lookup = ss.getRange('Import!A81').getValue();
var range = ss.getRange('Pricelist!A1:A200').getValues();
var lookupRange = [];

for (var i = 0; i < range.length; i++) {
lookupRange.push(range[i][0]);
}
var index = lookupRange.indexOf(lookup);
if (index == -1) {
}
else {
ss.getRange('Sheet3!A1').setValue('its there'); // need to paste in the matching SKU
}
}

导入表

SKU | Price
s123 | 99
s124 | 98
s125 | 97

价目表

SKU | Price
s123 | 99
a111 | 98
a453 | 97

最佳答案

试试这个:

function checkProduct() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s=ss.getSheetByName("Import")
var lr=s.getLastRow()
var lookup = s.getRange(2,1,lr-1,2).getValues();
var s1=ss.getSheetByName("Pricelist")
var lr1=s1.getLastRow()
var range = s1.getRange(2,1,lr1-1,2).getValues();
var s3=ss.getSheetByName("Sheet3")
var lookupRange = [];
for (var i = 0; i < lookup.length; i++) {
for (var j = 0; j < range.length; j++) {
var test=lookup[i][0]
if(lookup[i][0]==range[j][0]){
lookupRange.push([range[j][0],range[j][1],lookup[i][0],lookup[i][1],]);
}}}
s3.getRange(2,1,lookupRange.length,4).setValues(lookupRange);
}

我在一场比赛中推了所有 4 个值。根据需要进行调整。

关于javascript - 比较两列,如果匹配,则粘贴匹配值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42044903/

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