从空的 dtPicker 值开始,然后在按下提交按钮后更改格式
Start with empty dtPicker Value, then change format after pressing sumbit button
我真的很难解决这个问题,我浏览了 Google 但没有找到适合我的解决方案。是这样的(使用US Office 2016并添加了mscomct2.ocx);
加载 Excel 也会加载 UserForm1。
在其中,我有一个 'DateFrom' 和 'DateTo' 使用 DateTimePicker。
在启动时,我希望两者都显示为空(不能使用复选框)。选择适当的 'DateFrom' 和 'DateTo' 后,用户窗体中显示的格式为 .dtpLongDate(从 dtPicker 属性框中设置)。
按下提交按钮时,我需要将 DateTimePicker 格式从 .dtpLongDate 更改为自定义格式 "yyyy-MM-dd",这样我就可以将 DateFrom.Value 放入需要此特定格式的字符串中。
我已经尝试了我发现的所有方法,但由于我在 VB 上还很新手,所以我尝试过的任何东西似乎都不起作用。
这是我在命令按钮开头的代码:
Private Sub CommandButton1_Click()
Dim i As Integer
Dim TerminalIDRange As Range
Dim ii As Long
Set FormlerSheet = Worksheets("Formler")
Set DataSheet = Worksheets("Data")
Set TerminalIDRange = DataSheet.Range("M2:M2000")
DateFrom.Format = DateTimePickerFormat.Custom
DateTo.Format = DateTimePickerFormat.Custom
DateFrom.CustomFormat = "yyyy-MM-dd"
DateTo.CustomFormat = "yyyy-MM-dd"
MsgBox DateFrom.Value
出于某种原因,DateFrom.Value 仍然显示日期为 dd.mm.yyyy。
还有;要在加载用户窗体后将 DateFrom 和 DateTo 的代码设置为空白,我应该将此代码放在哪里??
希望有人能帮助我...
当我理解正确时,您只需要 "yyyy-MM-dd"
格式的日期。
然后你也可以只读取 DateFrom.Value
并用 Format$
转换它,就像这样:
Dim s as string
s = Format$(DateFrom.Value, "yyyy-MM-dd")
MsgBox s
我真的很难解决这个问题,我浏览了 Google 但没有找到适合我的解决方案。是这样的(使用US Office 2016并添加了mscomct2.ocx);
加载 Excel 也会加载 UserForm1。 在其中,我有一个 'DateFrom' 和 'DateTo' 使用 DateTimePicker。
在启动时,我希望两者都显示为空(不能使用复选框)。选择适当的 'DateFrom' 和 'DateTo' 后,用户窗体中显示的格式为 .dtpLongDate(从 dtPicker 属性框中设置)。
按下提交按钮时,我需要将 DateTimePicker 格式从 .dtpLongDate 更改为自定义格式 "yyyy-MM-dd",这样我就可以将 DateFrom.Value 放入需要此特定格式的字符串中。
我已经尝试了我发现的所有方法,但由于我在 VB 上还很新手,所以我尝试过的任何东西似乎都不起作用。
这是我在命令按钮开头的代码:
Private Sub CommandButton1_Click()
Dim i As Integer
Dim TerminalIDRange As Range
Dim ii As Long
Set FormlerSheet = Worksheets("Formler")
Set DataSheet = Worksheets("Data")
Set TerminalIDRange = DataSheet.Range("M2:M2000")
DateFrom.Format = DateTimePickerFormat.Custom
DateTo.Format = DateTimePickerFormat.Custom
DateFrom.CustomFormat = "yyyy-MM-dd"
DateTo.CustomFormat = "yyyy-MM-dd"
MsgBox DateFrom.Value
出于某种原因,DateFrom.Value 仍然显示日期为 dd.mm.yyyy。
还有;要在加载用户窗体后将 DateFrom 和 DateTo 的代码设置为空白,我应该将此代码放在哪里??
希望有人能帮助我...
当我理解正确时,您只需要 "yyyy-MM-dd"
格式的日期。
然后你也可以只读取 DateFrom.Value
并用 Format$
转换它,就像这样:
Dim s as string
s = Format$(DateFrom.Value, "yyyy-MM-dd")
MsgBox s