セル編集後、隣接セルに更新日時を自動的に打刻したい (Googleスプレッドシート)
スクリプトを使って実現します。たとえば、シート1のA列の2行目以降が編集されたら隣のB列のセルに更新日時を打刻するといった例を考えてみます。
まず、「ツール→スクリプトエディタ」からスクリプトエディタを開き、デフォルトのfunction myfunction(){}は削除し、以下のように記述します。
(コード)
保存したら実行ボタンは押さずにそのままシートに戻ります。
試しにセルA5に何でもいいので入力してみましょう。隣のセルB5に更新日時が打刻されると思います。
(結果)
まず、「ツール→スクリプトエディタ」からスクリプトエディタを開き、デフォルトのfunction myfunction(){}は削除し、以下のように記述します。
(コード)
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sh = ss.getActiveSheet();
function onEdit(e) {
var row = e.range.getRow();
var col = e.range.getColumn();
if (sh.getSheetName() === "シート1" && (row >= 2) && (col === 1)) {
var timestamp = Utilities.formatDate(new Date(),"JST","yyyy/MM/dd"+"("+"HH:mm:ss"+")");
sh.getRange(row, col+1).setValue(timestamp);
}
}
var sh = ss.getActiveSheet();
function onEdit(e) {
var row = e.range.getRow();
var col = e.range.getColumn();
if (sh.getSheetName() === "シート1" && (row >= 2) && (col === 1)) {
var timestamp = Utilities.formatDate(new Date(),"JST","yyyy/MM/dd"+"("+"HH:mm:ss"+")");
sh.getRange(row, col+1).setValue(timestamp);
}
}
保存したら実行ボタンは押さずにそのままシートに戻ります。
(結果)
コメント
コメントを投稿