如何将弹出日历表单合并到现有用户表单中

How to incorporate popup calendarform into an existing Userform

我对 Trevor Eyre 的弹出式日历版本(答案 # 11)印象深刻,很高兴能将其合并到我正在开发的用户表单中,这具有挑战性,因为我对 [=42 有非常基本的经验=].

Formatting MM/DD/YYYY dates in textbox in VBA(答案 #11) Link 到 Trevors 的示例电子表格 https://www.dropbox.com/sh/0n9gyc32rlr31n2/AAAW7ADAWiLEZRHftERro9Tva?dl=0

例如,我有一个名为 SECINC 的用户表单和一个文本框 (IncidentDate),用户必须在其中输入事件日期,直到我遇到 Trevor 版本的弹出日历。我使用的是 Excel 2013(64 位),MS 日期选择器不可用。

我已经将module1中的所有代码复制到我的项目手册的module1中,并保存并导入了CalendarForm,然后我有了自己的用户窗体,参考link:
Example of SECINC userform

我很乐意按原样使用基本的 CalendarForm,但我缺少的一件事是当用户单击 IncidentDate 文本框并且所选日期填充该 IncidentDate 框时如何调用日历表单。

我添加了一个 'image' 日历,想知道如何将它 link 添加到 CalendarForm 中,以便在单击它时打开日历并将日期放入 IncidentDate 文本框中。

我需要 IncidentDate 文本框中的日期格式以 DD/MM/YY 格式显示。

我在想,对于我们这些视觉基础的人来说,以视频教程的形式观看它以及对于那些刚接触VBA的用户来说也许会有好处。

如果我让你感到困惑,或者你需要进一步的信息,请指教。

提前致谢,

TheShyButterfly

您的图片需要一个点击事件,它将调用日历并填写日期字段

右键单击日历图像并选择"view code" 创建点击事件子。 然后按照 Trevor 的回答中指定的方式添加以下命令:

Private Sub Image1_Click()
    your_date_field_name.Value = CalendarForm.GetDate
End Sub

下次你问问题的时候尽量少点"literal",这么简单的问题我们不需要那么多细节,很容易混淆。我建议你阅读 this