491623644 发表于 2013-1-8 22:36:12

将时间向后推移4个小时

把当前时间向后推移四个月:$tTime = _Date_Time_GetSystemTime()
        $aTime = _Date_Time_SystemTimeToArray($tTime)
        _IEFormElementSetValue($Ele,@YEAR & "-" & @MON +4& "-" & @MDAY )
如果是这样的话,当前月份是12月的话,@MON +4就会变成16...
请教各位有无其他办法可以实现?谢谢!

annybaby 发表于 2013-1-8 22:43:52

本帖最后由 annybaby 于 2013-1-8 22:51 编辑

回复 1# 491623644

如果是11月就输出3月???那前面的年要不要改???

晕,是小时还是月?

491623644 发表于 2013-1-8 23:09:20

回复 2# annybaby
前面的年也需要修改,是推后4个月

annybaby 发表于 2013-1-8 23:17:46

回复 3# 491623644


    笨办法:
先判断一下@MON是否大于8,如果是大于8,就先减去12,并把年加1再输出

3mile 发表于 2013-1-8 23:32:43

_DateAdd( 'M',4, _NowCalcDate())

haijie1223 发表于 2013-1-8 23:42:07

回复 5# 3mile


    难得一见3M~

3mile 发表于 2013-1-8 23:51:37

回复 6# haijie1223
呵呵,最近很少上来了

annybaby 发表于 2013-1-9 00:05:14

其实不必用UDF,一句代码足矣~~

(@YEAR+Int(@MON>8) & "-" & @MON+4-Int(@MON>8)*12& "-" & @MDAY )

破帽遮颜 发表于 2013-1-9 02:34:28

学习了~~~~~~~~~

491623644 发表于 2013-1-9 09:27:31

本帖最后由 491623644 于 2013-1-9 09:35 编辑

回复 5# 3mile _DateAdd( 'M',4, _NowCalcDate())
使用此方法,可以实现,谢谢!

xms77 发表于 2013-1-9 22:16:14

如果是天数加4的话就要复杂一点了

xiaowo 发表于 2013-1-9 23:30:42

回复 11# xms77


    一直很佩服那些能够记住哪个月是30天哪个月是31天的同鞋

netegg 发表于 2013-1-10 04:59:24

本帖最后由 netegg 于 2013-1-10 05:48 编辑

Mod(@mon+4, 12)
咦,lz到底要4个月还是4个小时?

annybaby 发表于 2013-1-10 08:34:31

回复 13# netegg


    3,4楼,是4个月

如果刚刚好是8月份呢??输出0

netegg 发表于 2013-1-10 16:00:43

本帖最后由 netegg 于 2013-1-10 16:04 编辑

回复 14# annybaby
嗯,这个我后来也在想是用12还是什么数,不过取余肯定是最简单的,没那么复杂
而且直觉上不可能动用乘除,哪怕只是为了变符号
页: [1] 2
查看完整版本: 将时间向后推移4个小时