• ベストアンサー

Google Apps Scriptの日付の比較

日付の比較を行うには、 どのようにしたらよろしいでしょうか? 比較対象セルには、 yyyy/mm/dd表示形式が設定されています。 単純に、d1 == d2 だと、できません。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#247307
noname#247307
回答No.1

前に確か回答したと思いますが……。 2つのセルに日付のフォーマットが設定されているのでしたら、それをもとにDateオブジェクトを作成し、そこからgetTimeでミリ秒換算した値を取り出して引き算すればいいです。得られた結果を1日のミリ秒数で割れば日数が得られます。 function testfunc(e) { var sheet = SpreadsheetApp.getActiveSheet(); // とりあえずアクティブシートを指定 var r1 = sheet.getRange(1, 1); // 1つ目のセル var r2 = sheet.getRange(2, 1); // 2つ目のセル var d1 = new Date(r1.getValue()); // Dateを作成 var d2 = new Date(r2.getValue()); // Dateを作成 var dt = Math.abs(d1.getTime() - d2.getTime()); // ミリ秒数値を引き算 var d = dt / (1000 * 60 * 60 * 24); // 1日のミリ秒数で割り算 Logger.log(d + "日 "); // ログに出力 }

tabokutora
質問者

お礼

何度も、質問にお答え頂き、ありがとうございます。 Google Script を、 現在、使用しておりますが、 ネットにも、なかなかなく、 書籍も詳しいものがないので、 苦労しておりますが、 色々と、アドバイスを頂戴し、 なんとか、システムの基盤ができつつあります。 また、わからい事がありましたら、 宜しくお願い申し上げます。

関連するQ&A