業務上でレコードの入力時刻が要求される場合があります。
一つ考えられるのは、あるセルに値が入りましたら、「入力時刻」一覧(仮)に時刻を自動的に入力する自作関数を作成する方法です。サンプルコードは以下にご参考ください。
code.gs
function setCurrentTime(value) {
if (value) {
var ctime = new Date();
var hh = ctime.getHours();
var mm = ctime.getMinutes();
var t = hh+":"+mm;
return t;
}
}
自作関数が作成しましたら、スプレッドシートで下図のように関数をセルに入力します。
上記のコードは、シートをリロードする際に時刻も更新するとの点について考慮しないので、一旦下記のコードに修正しました。
使い方については、セルに次の式を入力 =setCurrentTime_R(A1, "B1")。
■ "B1"は、時刻を表示するセルに該当する。
code_r.gs
function setCurrentTime_R(value, index) {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var str_time = sheet.getRange(index).getValue();
var str_input = value;
var temp = "";
if ((value) && (str_time != "")) {
var ctime = new Date();
var hh = ctime.getHours();
var mm = ctime.getMinutes();
var t = hh+":"+mm;
return t;
} else {
return temp;
}
}