скрипт сравнения 2 столбцов и копирования значения, если совпадение между двумя листами Google - PullRequest
0 голосов
/ 07 февраля 2020

Может ли кто-нибудь помочь поделиться сценарием сравнения значений Google между двумя листами и вернуть другое значение на 1-м листе, если значение совпадает?

Например

Лист1 (До)

ОПИСАНИЕ MEMBERCODE BOX 1 A BOX 2 B КОРОБКА 3 C BOX 4 D КОРОБКА 5 E

Sheet2

MEMBERCODE ЦЕНА 14 долларов 10 долларов D $ 13 C 12 долларов Б $ 11

Sheet1 (After)

ОПИСАНИЕ MEMBERCODE ЦЕНА BOX 1 A $ 10 BOX 2 B $ 11 КОРОБКА 3 C 12 $ BOX 4 D $ 13 BOX 5 E $ 14

1 Ответ

1 голос
/ 07 февраля 2020

Попробуйте это:

function compareAndCombine() {
  var ss=SpreadsheetApp.getActive();
  var sh1=ss.getSheetByName('Sheet1');
  var v1=sh1.getRange(2,1,sh1.getLastRow()-1,sh1.getLastColumn()).getValues();
  var sh2=ss.getSheetByName('Sheet2');
  var v2=sh2.getRange(2,1,sh2.getLastRow()-1,sh2.getLastColumn()).getValues();
  var v2A=v2.map(function(r){return r[0]});
  v1.forEach(function(r,i){
    var idx=v2A.indexOf(r[1]);
    if(idx>-1) {
      v1[i].splice(2,0,v2[idx][1]);
    }else{
      v1[i].splice(2,0,'');
    }
  });
  sh1.getRange(2,1,v1.length,v1[0].length).setValues(v1);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...