非IT企業に勤める中年サラリーマンのIT日記

非IT企業でしかもITとは全く関係ない部署にいる中年エンジニア。唯一の趣味がプログラミングという”自称”プログラマー。

【GAS】セルの値が日付かどうかを判別するコード

   

GASでセル内の値が日付かどうかを判別する方法について書き留めておきます。割とよく使うので備忘録として。

ソースコードはこちら。セルの値を渡すと日付データであればtrueを返してくれます。

function isDate(d) {
  if ( Object.prototype.toString.call(d) == "[object Date]" ){
    return true;
  } 
  return false;
}
 

 

以下のように1行目に、「空欄」「数値」「文字列」「日付」データが入力されていたとします。各セルを判定してみましょう。

 

 

各セルの値をisDate関数に渡して帰ってきた結果を実行ログに出力してみます。

var sheet = SpreadsheetApp.getActiveSheet();
Logger.log(isDate(sheet.getRange(1, 1).getValue()));
Logger.log(isDate(sheet.getRange(1, 2).getValue()));
Logger.log(isDate(sheet.getRange(1, 3).getValue()));
Logger.log(isDate(sheet.getRange(1, 4).getValue()));
 

 

結果はご覧の通り。日付データのC1セルのみtrueが帰ってきました。

 

スポンサーリンク

 - Google Apps Script