使用VB 6
在我的项目中使用两个DTPicker,我想选择每月和每年像MM / yyyy和yyyy
现在正在使用每日日期,如23/02/2009(日/月/日),我想使用像月刊(MM / yyyy)和每年(yyyy)
我的代码
Public Function DaysInMonth(dte As Date) As Integer
Dim d As Date
d = DateAdd("m", 1, dte)
d = DateAdd("d", -1, d)
DaysInMonth = Day(d)
End Function
Private Sub Form_Load()
Dim dteFrom As Date
Dim dteTo As Date
dteFrom = Format(CDate(Year(Date) & "-" & Month(Date) & "-" & "01"), "yyyy-mm-dd")
dteTo = Format(CDate(Year(Date) & "-" & Month(Date) & "-" & DaysInMonth(dteFrom)), "yyyy-mm-dd")
dtpFrom.Value = dteFrom
dtpTo.Value = dteTo
End Sub
以上代码适用于每日日期。我也想使用月度和年度日期 现在我选择的日期显示日期的完整价值,如03-02-2009,我想显示月度和年度数据
预期产出。
每月日期
03/2009 to 04/2009 – It should take a value of 01/03/2009 to 30/04/2009
05/2009 to 05/2009 – It should take a value of 01/05/2009 to 31/05/2009
年度日期
2008 to 2008 – It should take a value of 01/01/2008 to 31/12/2008
2008 to 2009 – It should take a value of 01/01/2008 to 31/12/2009
如何选择每月和每年?
需要VB 6代码帮助
答案 0 :(得分:1)
您可以将DTPicker上的格式设置为3(dtpCustom),将CustomFormat设置为 MM / yyyy 。这将在文本部分显示月/年格式,但您仍会在下拉菜单中获得完整日历。
如果要禁用日历,可以将UpDown设置为True。然后你会得到上/下按钮而不是下拉列表。
您需要确保隐藏值(日期部分)正确。
修改强> 好的,从您的评论我明白您对日期选择器感到满意,但您想以特殊格式显示结果吗?
<强> 实施例 强>
所选日期为 20/8/2009 ,并存储在日期变量 a 中。
显示为 2009 :
MsgBox Format(a, "yyyy")
显示为 08/2009 :
MsgBox Format(a, "mm/yyyy")
显示为 2009年8月:
MsgBox Format(a, "mmmm, yyyy")
显示为 2009年8月:
MsgBox Format(a, "mmm, yyyy")
这是你想要的吗?