以下の関数を使用して、isDate()
求めていることを実行します。日付形式は、他のニーズに合わせて変更できます。詳細については、[ Utilities.formatDate()
][3] を参照してください。
// From http://stackoverflow.com/questions/1353684
// Returns 'true' if variable d is a date object.
function isValidDate(d) {
if ( Object.prototype.toString.call(d) !== "[object Date]" )
return false;
return !isNaN(d.getTime());
}
// Test if value is a date and if so format
// otherwise, reflect input variable back as-is.
function isDate(sDate) {
if (isValidDate(sDate)) {
sDate = Utilities.formatDate(new Date(sDate), "PST", "MM/dd/yyyy");
}
return sDate;
}
スクリプトでRange.getValues()
は、指定された範囲内のデータの 2 次元配列を返す関数を使用しました。(あなたの場合はシート全体です。)したがって、読み取った値をループして、関心のあるセルでこの関数を呼び出してから、情報をスプレッドシートに書き戻す必要があります。Google のドキュメントと Stackoverflow の両方に、この例がたくさんあります。