LoginSignup
5
2

More than 1 year has passed since last update.

GAS(Google Apps Script)で自動VLOOKUPっぽいことをしてみました

Last updated at Posted at 2021-05-22



GAS(Google Apps Script)を使って、Google Spread Sheet上でVLOOKUPっぽいことをしてみました。
そもそも最初から、スプレッドシートにVLOOKUP関数いれとけばいいじゃんって話なのですが、わけあって、こんなことをしてしまいした。

やったこと

このような顧客リストシートがあるとして、
573b70e87fae0c68f6bc55417281012d.png

「入力シート」のA列に、会員番号を入力すると、自動的に名前が出るようにします。

Image from Gyazo

手順

ツール > スクリプトエディタ
を起動し、以下のコードを入力

sample.gs
function myFunction() {
  const inputSheet = SpreadsheetApp.getActiveSheet(); //シートを取得
  const inputCell = inputSheet.getActiveCell(); //アクティブセルを取得

  //アクティブセルがシート「入力シート」のA列かを判定し、vlookup関数実行
  if( inputSheet.getName()=="入力シート" && inputCell.getColumn()==1 ){ 
    const value = inputCell.getValue();
    const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("会員リスト");
    const name =  vlookup(value,sheet,2); //vlookup関数呼び出し
    const inputRow = inputCell.getRow();
    inputSheet.getRange(inputRow, 2).setValue(name); 
  }
}

function vlookup(value,sheet,column) {
  let returnValue = "なし";
  for (var i = 2; i <= sheet.getLastRow(); i++) {
    if(value == sheet.getRange(i,1).getValue()){
      returnValue = sheet.getRange(i,column).getValue();
      break;
    }
  }    
  return returnValue;
}


あとは、
トリガーを「編集」に設定し、
デプロイ!

以上です。


5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2