GASで空白を判定する方法

GAS_空白

今回の記事では、
GASで空白のセルか、空白の文字列が含まれているかどうかを判定する方法を紹介します。

関連記事
あわせて読みたい
【GAS】if文を使った条件分岐の基本 今回の記事では、プログラムを書くに当たって重要な条件分岐を行うためのif文について解説していきます。 https://blog.8basetech.com/google-apps-script/gas-for/ 【i...
目次

セルが空白かを判定

サンプルデータを用意してみました。

これらのサンプルデータから名前が空白なものを取ってみたいと思います。

function sampleFunction() {
  var spreadSheet = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = spreadSheet.getActiveSheet();
  var lastRow = sheet.getLastRow();
  for (var i=1; i <= lastRow; i++){
    var cell = sheet.getRange(i, 2); //名前
    if(cell.isBlank()){
      Logger.log(i + "行目の名前が未入力です");
    }
  }
}
//ログ
2行目の名前が未入力です。

やっている内容としては、空白判定したいセルの情報をとってきて、
isBlank()を呼び出してあげることによって、空白かどうかを判定してくれます。

セルの取得の仕方についてはこちらをご覧ください。

関連記事
あわせて読みたい
GASでスプレッドシートのセルの値を取得する 【GASでセルを指定して値を取得する】 GASでセルの値を取得するためにはgetRangeとgetValueを使います。getRangeで取得したいセルの位置を指定して、getValueでそのセル...

空白の文字列が含まれているか判定

次にこのようなサンプルデータを用意してみました。

これらのサンプルデータから半角スペース、全角スペースが含まれているものを取り出してみたいと思います。

function sampleFunction() {
  var spreadSheet = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = spreadSheet.getActiveSheet();
  var lastRow = sheet.getLastRow();
  for (var i=2; i <= lastRow; i++){
    var value = sheet.getRange(i, 1).getValue();
    if(value.match(/\s/)){
      Logger.log(i + "行目に半角もしくは全角スペースが含まれています。");
    }
  }
}

//ログ
3行目に半角もしくは全角スペースが含まれています。
4行目に半角もしくは全角スペースが含まれています。

matchという文字列検索の関数を使用することによって、空白を探し出しています。
今回は正規表現ということで\sがスペースを表しています。

スペースを除外したいという場合にはif文の中に文字列置換の関数を書いてあげれば、
空白が除外されるようになります。

function sampleFunction() {
  var spreadSheet = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = spreadSheet.getActiveSheet();
  var lastRow = sheet.getLastRow();
  for (var i=2; i <= lastRow; i++){
    var value = sheet.getRange(i, 1).getValue();
    if(value.match(/\s/)){
      Logger.log(i + "行目に半角もしくは全角スペースが含まれています。");
      sheet.getRange(i, 1).setValue(value.replace(/\s/, ""));
    }
  }
}

まとめ

  • セルの情報をgetRange().getValue()を使って取得
  • 空白のセルにはisBlank()
  • 空白が含まれているかにはmatch(/\s/)を使う
あわせて読みたい
GASを身に着けるための学習本おすすめまとめ プログラミングをしていく際には、基本的な部分はネットになども上がっていますが、暗黙知的な部分を説明してくれていない記事も多いので、躓くことがよくあります。 ま...
GAS_空白

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次