VBA中将日期想描述当月的5日该如何写代码?
答案:2 悬赏:70 手机版
解决时间 2021-03-19 09:22
- 提问者网友:佞臣
- 2021-03-18 16:29
VBA中将日期想描述当月的5日该如何写代码?
最佳答案
- 五星知识达人网友:西风乍起
- 2021-03-18 17:44
在工作表名称上面右击鼠标,在打开的菜单中,点击“查看代码”,在打开的窗口右侧粘贴下列代码:
Private Sub Worksheet_Change(ByVal T As Range) Dim c%, r&, rn As Range, rng As Range c = T.Column: r = T.Row If c = 5 Or c = 6 Or c = 8 Or c = 9 Then Set rn = IIf(c Mod 3 = 2, T.Offset(, 1), T.Offset(, -1)) Set rng = IIf(c Mod 3 = 2, T.Offset(, 2), T.Offset(, 1)) If IsDate(T) And IsDate(rn) Then If rng.Offset(, -1) >= rng.Offset(, -2) Then rng = Abs(T - rn) + 1 Else rng = "" MsgBox "开始日期不能大于结束日期", vbInformation, "" End If End If End IfEnd Sub
Private Sub Worksheet_Change(ByVal T As Range) Dim c%, r&, rn As Range, rng As Range c = T.Column: r = T.Row If c = 5 Or c = 6 Or c = 8 Or c = 9 Then Set rn = IIf(c Mod 3 = 2, T.Offset(, 1), T.Offset(, -1)) Set rng = IIf(c Mod 3 = 2, T.Offset(, 2), T.Offset(, 1)) If IsDate(T) And IsDate(rn) Then If rng.Offset(, -1) >= rng.Offset(, -2) Then rng = Abs(T - rn) + 1 Else rng = "" MsgBox "开始日期不能大于结束日期", vbInformation, "" End If End If End IfEnd Sub
全部回答
- 1楼网友:轮獄道
- 2021-03-18 18:53
DateSerial(Year(Date),Month(Date),5)
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯