2013-03-05 10 views
8

日付の異なる時刻の日付の配列があります。Google Apps Scriptで日付/時刻を00:00:00に設定します。

例:{4/15/13午前五時00分00秒、03/10/13午後1時00分○○秒、02/10/13 2時00分00秒、等}

私が望んでいた場合アレイを読み取るには時間だけを00:00:00に変更します。

{4/15/13 00:00:00、03/10/13 00:00:00、02/10/13 00 00:00など}

どうすればよいですか?

私はgetTime()を使用しようとしましたが、時間を制御することはできません。どんな助けも素晴らしいだろう。 ありがとう!

EDITは:「12/20/5828963午前0時00分○○秒」ごとに単一のセルのための:

for (var i = 0; i < gValues.length; i++) { // repeat loop 
    sheet.getRange(i + 2, 7, 1, 1).setValue(gValues[i][0].setHours(00,00,00,00)); 
    } 

しかし、その代わりに望ましい結果で、私はこの値を取得する:私はこのループを試してみました。

+0

は、あなたのシート日付またはストリンの値ですgs? (つまり、スプレッドシート形式の設定で日付形式を変更できますか?) "12/20/5828963 0:00:00"を返した実際の値は何ですか –

+0

日付ではなく、文字列ではありません。 {3/16/2013 17:00:00 3/16/2013 17:00:00 3/20/2013 5:00:00 3/20/2013 5:00:00 3/21/2013 5:00:00 3/21/2013 5:00:00 3/21/2013 5:00:00 3/25/2013 5:00:00 3/25/2013 5:00:00 3/13/2013 5:00:00 3/26/2013 1:00:01 3/6/2013 4:00:00 3/5/2013 4:00:00 3/19/2013 5:00:00 3/26/2013 1:00:00 3/2/2013 4:00:00 3/18/2013 5:00:00} – user1786546

+0

あなたの例で区切り文字が表示されません...?例と編集された解答を見てください。 –

答えて

13

Google AppsのスクリプトではJavaScript、日付操作are explained here

時間を設定すると、このように書きます:ここ

Date.setHours(hour,min,sec,millisec) 

は一例です:

// 3/16/2013 17:00:00 

function test(){ 
var x = new Date('3/16/2013 17:00:00');// x is now a date object 
x.setHours(0,0,0,0); set hours to 0, min Secs and milliSecs as well 
Logger.log(x);// show result 
} 

ロガー値:Sat Mar 16 00:00:00 GMT+01:00 2013

+0

私の編集した質問をご覧ください。 – user1786546

+0

あなたの例がそれをしました。ありがとう!何らかの理由で、私は新しいDate()を別の変数にしなければなりません。 – user1786546

+0

@ user1786546 - もちろん、 "setHours"関数は数値を返し、 "new Date"と "setHours"を一緒に割り当てると "x"変数はこの数値を取得するため、別の変数に入れなければなりません日付オブジェクトではなく、必要に応じて – TheCuBeMan

関連する問題