例文を使って繰り返し業務を時短

【GAS】縦(行)ループして文字列を部分一致させる

【GAS】縦(行)ループして文字列を部分一致させる GAS

Googleスプレッドシート上で部分一致を行い、その結果を3列目に書き込む

シート上の2つのセル範囲の文字列が部分的に一致する場合にTrueを、そうでない場合にFalseをセルに書き込むものです。

function Like部分一致() {
  var sheet = SpreadsheetApp.getActiveSheet();
  
  for (var i = 2; i <= 12; i++) {
    sheet.getRange(i, 3).setValue(sheet.getRange(i, 1).getValue().indexOf(sheet.getRange(i, 2).getValue()) >= 0);
  }
  
  SpreadsheetApp.getUi().alert("完了");
}

解説

  • var sheet = SpreadsheetApp.getActiveSheet();
    • シートをアクティブなシートに設定する
      • スクリプトが現在アクティブなGoogleスプレッドシートを取得し、変数sheetに格納する
  • for (var i = 2; i <= 12; i++) {
    • シートの2行目から12行目までの範囲をループします。
  • sheet.getRange(i, 3).setValue(sheet.getRange(i, 1).getValue().indexOf(sheet.getRange(i, 2).getValue()) >= 0);
    • 現在ループしている行の1列目と2列目の値を取得し、2列目の値が1列目に含まれているかどうかを判定します。含まれている場合はtrueを、含まれていない場合はfalseを取得し、3列目に書き込みます。
  • SpreadsheetApp.getUi().alert(“完了”); 処理が完了したことを通知するアラートを表示します。

コメント

タイトルとURLをコピーしました