当用户单击宏按钮时,会出现一个对话框。此对话框大部分已填写(日期,电子邮件,制作人,网站等已填写),所有用户需要输入的名称。问题是输入的日期是静态的,所以如果我输入“3/3/11”它会保持这种状态直到有人改变它。
我想知道该文本框是否有某种方法可以始终显示当前日期(除非用户因任何原因决定更改它)。我尝试将不同的东西放入文本框的“值”部分(例如“getDate()”和“= Date()”),但到目前为止还没有成功。
谢谢,
Jesse Smothermon
答案 0 :(得分:12)
使用表格Initialize event,例如:
Private Sub UserForm_Initialize()
TextBox1.Value = Format(Date, "mm/dd/yyyy")
End Sub
答案 1 :(得分:1)
执行此操作的简单方法是将要使用的Date函数放在Cell中,并使用LinkedCell属性从文本框链接到该单元格。
从VBA您可以尝试使用:
textbox.Value = Format(Date(),"mm/dd/yy")
答案 2 :(得分:1)
在显示表单的代码中设置值,而不是在文本框的design-timeProperties中设置。
Private Sub UserForm_Activate()
Me.txtDate.Value = Format(Date, "mm/dd/yy")
End Sub
答案 3 :(得分:0)
你很亲密。在UserForm_Initialize()
事件处理程序中添加此代码:
tbxDate.Value = Date
答案 4 :(得分:0)
这是一个更简单的版本。在单元格中,您希望日期只显示类型
=Today()
将单元格格式化为您想要的日期格式,Bob是您的叔叔。 :)
答案 5 :(得分:0)
实际上,它并不像看起来那么复杂。
Sub
today_1()
ActiveCell.FormulaR1C1 = "=TODAY()"
ActiveCell.Value = Date
End Sub
答案 6 :(得分:0)
我知道这是非常古老的帖子,但我之前已经使用过这个
您可以随时调整以激活。现在方法是另一种方式。只是一个选项
Private Sub UserForm_Initialize()
Textbox1.Text = Format(Now(), "mmddyyyhhmmss")
End Sub