揮発性スプレッドシート関数は、指定した理由でタイムスタンプには適していません。
トリガを使用します。各シートにスクリプトを追加する必要はありません。 1つのスタンドアロンのGoogle Appsスクリプトで、forSpreadsheet(key) methodを使用して複数のスプレッドシートに対して「編集中」トリガを自動的にインストールできます。例:上場スプレッドシートの1が編集されるたびに
今
var ids = ['ss_id1', 'ss_id2', ... ]; // array of spreadsheet IDs
for (var i = 0; i < ids.length; i++) {
ScriptApp.newTrigger('timestamp').forSpreadsheet(ids[i]).onEdit().create();
}
function timestamp(e) {
e.source.getActiveSheet().getRange(1, 1).setValue(new Date());
}
、それに編集されたシートのセルA1には、編集の時間を持つことになります。
current limitationsがスクリプトごとにユーザーあたり20トリガーであるため、これは1000トリガーでは機能しません。あなたはスタンドアロンのスクリプトを50コピー必要とするように見えますが、それはストレッチですがそれでも管理しやすいものです。
もう一つの選択肢は、(DriveAppを使用して)ディレクトリ内のスプレッドシートの「最終更新」の日付を取得し、スプレッドシートのものを編集し、スケジュールのGoogle Appsスクリプトを実行することです。
さらにもう一つはあきらめます。おそらく、スプレッドシートのインターフェースで既に利用可能な情報を保持するためのセルは必要ないかもしれません。
出典
2017-09-09 01:47:23
FTP