ユーザーがマクロボタンをクリックすると表示されるダイアログボックスがあります。このダイアログボックスはほとんど入力されており(日付、電子メール、プロデューサー、Webサイトなどが入力されています)、ユーザーが行う必要があるのは名前を入力することだけです。問題は、入力された日付が静的であるため、「3/3/11」と入力した場合、誰かが変更するまでその日付がそのまま残ることです。
そのテキストボックスに常に現在の日付を表示する方法があるかどうか疑問に思いました(ユーザーが何らかの理由で日付を変更することを決定しない限り)。テキストボックスの[値]セクションにさまざまなもの(「getDate()」や「= Date()」など)を入力しようとしましたが、これまでのところ成功していません。
ありがとうございました、
ジェシー・スモザーモン
フォームのInitializeイベントを使用します。例:
Private Sub UserForm_Initialize()
TextBox1.Value = Format(Date, "mm/dd/yyyy")
End Sub
これを行う簡単な方法は、使用するDate関数をセルに配置し、LinkedCellプロパティを使用してテキストボックスからそのセルにリンクすることです。
VBAから、次のものを使用してみてください。
textbox.Value = Format(Date(),"mm/dd/yy")
テキストボックスのdesign-timePropertiesではなく、フォームの表示時にコードから値を設定します。
Private Sub UserForm_Activate()
Me.txtDate.Value = Format(Date, "mm/dd/yy")
End Sub
あなたは近かった。このコードをUserForm_Initialize()
イベントハンドラーに追加します。
tbxDate.Value = Date
実際、それは見た目ほど複雑ではありません。
Sub
today_1()
ActiveCell.FormulaR1C1 = "=TODAY()"
ActiveCell.Value = Date
End Sub
私はこれが非常に古い投稿であることを知っていますが、私は以前にこれを使用しました
いつでも調整してアクティブ化できます。今の方法は別の方法です。ただのオプション
Private Sub UserForm_Initialize()
Textbox1.Text = Format(Now(), "mmddyyyhhmmss")
End Sub
これがより単純なバージョンです。日付を表示したいセルに「
=Today()
セルを希望の日付形式にフォーマットし、ボブはあなたの叔父です。 :)