Excel - 日付を自動的に変更する

問題

私のワークシートではこの式を使っています。

  •  = IF(OR(A1 = 1、A1 = 2、A1 = 3)、TODAY()、 "") 

問題は、次の日にシートを開いたときにすべてのエントリー日が今日に変更された場合、前日は同じままであることを示し、今日の日付を表示する新しいエントリーのみが必要です。

 状況日程フラグ仕事の説明日付1 2010年5月16日2 2010年5月17日1 2010年5月20日3 2010年5月21日 

溶液

A1の値が手動で入力される場合は、イベントを使用できます。

それをする

  • 1. VBEを起動するために、F11キーを押します。
  • 2.プロジェクトエクスプローラを表示するために、Ctrl + Rキーを押します。
  • 3. A1の値を変更する予定のシートをダブルクリックします。
  • 4.このコードを貼り付けます

 プライベートSub Worksheet_Change(ByVal Target As Range) 'イベントが最初の列(列A)によってトリガされなかった場合は何もしませんIf(Target.Column 1)イベントが行1によってトリガされなかった場合' Subの終了 'If(Target。行1)Exit Sub 'イベントを無効にするので、イベントのサイクルに入ることはできません。Application.EnableEvents = FalseまたはTarget = 2またはTarget = 3の場合1行下がり、1列右に移動します。Target.Offset(1) 、1)= CDate(Now) '同じ行で右方向に1列の移動先。Offset(0、1)= ""そうでなければ1行下に移動し、右方向の1列に移動Target.Offset(1、1)= ""同じ行と1列右に移動Target.Offset(0、1)= CDate(Now)End 'これで作業が完了したら、もう一度evetnsを有効にできますApplication.EnableEvents = True End Sub 

ご了承ください

フォーラムでこのヒントを寄せてくれたrizvisa1に感謝します。

前の記事 次の記事

トップのヒント