0

スプレッドシートの検索に使用している検索スクリプトがあります。戻り値の1つは日付です。スプレッドシートでは次のように見えますmm/dd/yyyyが、テキストボックスには、次のような完全な日付が表示されますFri May 10 2013 03:00:00 GMT。コード行は次のようになります。

txt1.setText(data[nn][14]);

mm / dd / yyyy 01/26/2013のようにするにはどうすればよいですか?私は試した

var date = (Date(data[nn][14]), "EST", "MM/dd/yyyy")しかし、それは文字通りMM / dd/yyyyを示しています

また、私はtxt1.setText(data[nn][0]).setStyleAttribute("background", "cyan");その色の重要なボックスを持っています。視覚補助と同じように。スプレッドシートでは、その日付には条件付きの書式が設定されており、日付が現在の日付より前に赤くなります。(期限切れ)スクリプトにそのフォーマットを検索させたり、同じ条件付きフォーマットを実行したりする方法はありますか?

これは私が思いつくことができたものです、

if(data[nn][14] < Date(), .setStyleAttribute("background", "red"));

しかし、それは機能しません

4

1 に答える 1

0

getTime()を使用して、日付オブジェクトを「エポックからのミリ秒」に変換してみてください。

var dateSerial = data[nn][14].getTime();
var nowSerial = (new Date()).getTime();
var formatColour = (dateSerial < nowSerial)?'red':'cyan';

質問の他の部分(日付をどのように表示するかを指定する)については、Utilities.formatDate()を参照してください。

于 2013-01-26T21:05:02.330 に答える