Excelスプレッドシートで、別のセルが変更されると(更新タイムスタンプなど)、現在の日付と時刻でセルを自動的に更新します。
各行にタイムスタンプがあります。行内の先行するセルの1つが更新されたらすぐに更新します。
それを行う方法について何かアドバイスはありますか?
Excelスプレッドシートで、別のセルが変更されると(更新タイムスタンプなど)、現在の日付と時刻でセルを自動的に更新します。
各行にタイムスタンプがあります。行内の先行するセルの1つが更新されたらすぐに更新します。
それを行う方法について何かアドバイスはありますか?
回答:
Now()という値でセルを作成します。yyyy / mm / dd HH:mm:ssのように、24時間形式の完全なタイムスタンプのようにフォーマットします。
自動再計算(デフォルト)が設定されている限り、別のセルが変更されるたびに、タイムスタンプが更新されます。
さらに考察すると、ハードコードされたタイムスタンプが必要な場合は、開いているワークブックや印刷などのアクションを含まないアクションによってのみ更新されます。worksheet_changeにアタッチされたマクロを作成できます。以前のように特定のフォーマットで、ターゲットセルをテキストとして設定します。Worksheet_ChangeイベントでSheet1.Cells []。Value = Text(Now()、 "yyyy / mm / dd HH:mm:ss")のようなものを使用します。
これを起動時に読み込まれるテンプレートに入れれば、二度と考える必要はありません。
http://chandoo.org/wp/2009/01/08/timestamps-excel-formula-help/には、再帰的な式を使用してタイムスタンプを実装する方法の詳細があります。彼らは御馳走を働かせます。
この記事では、最初に循環式をオン(デフォルトではオフ)にする方法と、特定のセルに値が挿入されたときにタイムスタンプを自動的に挿入する循環式を作成する方法について説明します。
タイムスタンプを含むセルがB3で、監視するセルがC3の場合、式は次のとおりです。
=IF(C3<>"",IF(B3="",NOW(),B3),"")
つまり、C3が空でない場合、B3をNOW()に設定します(B3が空の場合)。それ以外の場合は、B3の現在の値です。
これは更新と保存で安定しているように見えます。