Foxtable(狐表)用户栏目专家坐堂 → [求助]关于DateYMD函数计算不正确的问题


  共有1775人关注过本帖树形打印复制链接

主题:[求助]关于DateYMD函数计算不正确的问题

帅哥哟,离线,有人找我吗?
xy0739
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:93 积分:723 威望:0 精华:0 注册:2017/10/9 17:21:00
[求助]关于DateYMD函数计算不正确的问题  发帖心情 Post By:2017/11/1 11:13:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看


2017-10-1 到 2017-10-31 为什么不是一个月,而是30天呢?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/11/1 12:00:00 [只看该作者]

你要这个?

 

Dim d1 As Date = "2017-10-01"
Dim d2 As Date = "2017-10-31"
Dim y,m, d As Integer
DateYMD(d1, d2.AddDays(1), y,m,d)
msgbox(y & m & d)

 

30天有什么错?你一个月的逻辑是什么?

 

1、开始时间是1号,结束时间是最后一天?

 

2、间隔是30天就是1月?那2017-10-10到2017-11-10呢?


 回到顶部
帅哥哟,离线,有人找我吗?
xy0739
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:93 积分:723 威望:0 精华:0 注册:2017/10/9 17:21:00
回复:(有点甜)你要这个??Dim d1 As Date...  发帖心情 Post By:2017/11/1 14:05:00 [只看该作者]

10-1到10-31  不是31天吗。。。?

好吧,间隔?我也不知道这个函数把哪天给间隔掉了。。。

既然间隔我就加一天进去咯,没办法了。图片点击可在新窗口打开查看



[此贴子已经被作者于2017/11/1 14:06:30编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
shenyl0211
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:977 积分:6835 威望:0 精华:0 注册:2012/4/2 21:49:00
  发帖心情 Post By:2017/11/1 14:22:00 [只看该作者]

1、你于2016年10月1日存款,定期1年,则2017年10月1日取款算1年定期,而2017年9月30日取款,只能按活期。
2、同理,你于10月1日存款,到10月2日只能算1天。
3、当然,如果上班、出差、请假之类的天数,需要加1天,这才是你想要的结果。
所以,不同的应用有不同的算法,自己测试、调整就行。

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/11/1 14:23:00 [只看该作者]

 如果要计算总天数,参考

 

http://www.foxtable.com/webhelp/scr/0287.htm

 


 回到顶部
帅哥哟,离线,有人找我吗?
xy0739
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:93 积分:723 威望:0 精华:0 注册:2017/10/9 17:21:00
回复:(shenyl0211)1、你于2016年10月1日存款,定期...  发帖心情 Post By:2017/11/1 16:24:00 [只看该作者]

哦,明白。

 回到顶部