GASのIF文でセルが「空白なら」「空白でないなら」を判定する方法

GASのIF文でセルが「空白なら」「空白でないなら」を判定する方法
mono
mono
こんにちは、monoです。

スプレッドシートでGASを使っていると、「セルが空白なら」「セルが空白でないなら」などの条件分岐を使いたい場面ってありますよね。

当記事では「GASでスプレッドシートのセルの空白判定」をする方法について解説します。

目次

GASのIF文で「セルが空白なら」を判定する方法

まずはGASでスプレッドシートの「セルが空白なら」を判定する方法から解説します。

セルの空白を判定する条件式は大きく2つありまして、好きな方を使って構いません。

isBlank()で「セルが空白なら」を判定する場合

1つ目の方法が、Range.isBlank()メソッドを使った方法です。

関数によって、Rangeオブジェクトからセルの空白を判定し、「空白ならTRUE、空白でないならFALSE」を返します。


function myFunction() {
  var mySheet = SpreadsheetApp.getActiveSheet();
  var myRange = mySheet.getRange("A1");
  if(myRange.isBlank()){
    Logger.log("このセルは空白です");
  }else{
    Logger.log("このセルは空白ではありません");
  }
}

セル値で「セルが空白なら」を判定する場合

2つ目の方法が、cellオブジェクトの値を直接見に行って判定する方法です。

直感的に、変数の値が「''」と等しいかを判定すればOKですが、一点だけ、GASの場合は等式の判定が「===」という感じで「=(イコール)」が3つ必要なので、そこだけ注意してください。


function myFunction() {
  var mySheet = SpreadsheetApp.getActiveSheet();
  var myCell = mySheet.getRange("A1").getValue();
  if(myCell === ''){
    Logger.log("このセルは空白です");
  }else{
    Logger.log("このセルは空白ではありません");
  }
}

GASのIF文で「セルが空白でないなら」を判定する方法

次に「セルが空白でないなら」の判定方法ですが、まぁ「セルが空白なら」の反対の条件式にすればOKです。

isBlank()で「空白でないなら」を判定する場合

isBlank()を使って「セルが空白でないなら」を判定するには、「返し値がFALSEと同じ」という条件式にしましょう。


function myFunction() {
  var mySheet = SpreadsheetApp.getActiveSheet();
  var myRange = mySheet.getRange("A1");
  if(myRange.isBlank()===FALSE){
    Logger.log("このセルは空白ではありません");
  }else{
    Logger.log("このセルは空白です");
  }
}

セル値で「セルが空白でないなら」判定する場合

セル値で「セルが空白でないなら」判定する場合は、「!==」という形で、「空白と等しくない」という条件式にすればOKです。


function myFunction() {
  var mySheet = SpreadsheetApp.getActiveSheet();
  var myCell = mySheet.getRange("A1").getValue();
  if(myCell !== ''){
    Logger.log("このセルは空白ではありません");
  }else{
    Logger.log("このセルは空白です");
  }
}

まとめ

今回は「GASでスプレッドシートのセルの空白判定」をする方法について解説しました。

紹介したサンプルコードはコピペしたらそのまま使えますので、よかったら使ってみてください。

では、また。

おすすめGAS本の最新版

created by Rinker
¥1,287 (2022/07/06 20:00:50時点 Amazon調べ-詳細)
あわせて読みたい
【GAS入門】Google Apps Scriptでできることを徹底解説!【初心者向け】 「業務効率化のため」「プログラミング入門の勉強として」など理由はさまざまですが、近年Google Apps Script(GAS)を勉強する人が増えてきています。 しかしphpやHTML...
目次
トップへ
目次
閉じる