Javascript 尝试在AdWords脚本中执行vlookup,但耗时太长

Javascript 尝试在AdWords脚本中执行vlookup,但耗时太长,javascript,vlookup,google-ads-api,Javascript,Vlookup,Google Ads Api,我正在尝试将位置输入(可能是邮政编码或邻居)与AdWords位置ID相匹配。我有一个巨大的google表格,有近100000行,其中列出了所有邮政编码、城市、邻居等及其对应的ID,我正在尝试编写一个可以输入邮政编码的函数(例如)它提供了位置ID。到目前为止,我有: var locationSpread = SpreadsheetApp.openById('scriptID'); var locationSheet = locationSpread.getSheetByName('Shee

我正在尝试将位置输入(可能是邮政编码或邻居)与AdWords位置ID相匹配。我有一个巨大的google表格,有近100000行,其中列出了所有邮政编码、城市、邻居等及其对应的ID,我正在尝试编写一个可以输入邮政编码的函数(例如)它提供了位置ID。到目前为止,我有:

  var locationSpread = SpreadsheetApp.openById('scriptID');
  var locationSheet = locationSpread.getSheetByName('Sheet1'); 
  var locationRow = locationSheet.getLastRow();

  var locationMatch = function(locationInput) {    

  for (var i = 2; i <= locationRow; i++) {
      var locationName = locationSheet.getRange([i], 2).getValue();
      if (locationName == locationInput) {
          return locationSheet.getRange([i], 1);
      }
    }
  }

  Logger.log(locationMatch('DD7'));
var locationSpread=SpreadsheetApp.openById('scriptID');
var locationSheet=locationSpread.getSheetByName('Sheet1');
var locationRow=locationSheet.getLastRow();
var locationMatch=函数(locationInput){
对于(var i=2;i,使用.getValues()可能更快。您需要尝试一下

var locationSpread = SpreadsheetApp.openById('asdf');
var locationSheet = locationSpread.getSheetByName('asdf'); 
var locationRow = locationSheet.getLastRow();

Logger.log("Starting!")
Logger.log("LocationRow: "+locationRow);

function locationMatch(locationInput) {    
  var locationNames = locationSheet.getRange(1, 2,locationRow,2).getValues();
  for (var i = 1; i <= locationRow-1; i++) {
    Logger.log("locationNames[i][0]:"+locationNames[i][0])
    if (locationNames[i][0] == locationInput) {
      return locationSheet.getRange([i], 1);
    }
  }
}

Logger.log("locationMatch Result:"+locationMatch('MA'));
var locationSpread=SpreadsheetApp.openById('asdf');
var locationSheet=locationSpread.getSheetByName('asdf');
var locationRow=locationSheet.getLastRow();
Logger.log(“启动!”)
Logger.log(“LocationRow:+LocationRow”);
函数locationMatch(locationInput){
var locationNames=locationSheet.getRange(1,2,locationRow,2).getValues();

对于(var i=1;我知道你必须在谷歌表单中这样做吗?太棒了,稍微修改了代码,但这正是我需要做的,谢谢!