Foxtable(狐表)用户栏目专家坐堂 → 计算年龄


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

主题:计算年龄

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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
计算年龄  发帖心情 Post By:2020/4/10 11:01:00 [只看该作者]

请问老师:

DataColChanged中计算年龄:要求用2019-08-31减去[出生日期](列),然后除以10000,再取整,代码怎么写呢?

 

int[(“2019-08-31” - [出生日期])/10000]

 

把2019-08-31变成8位数,把[出生日期]变成8位数,不知怎么变。

[此贴子已经被作者于2020/4/10 11:07:56编辑过]

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


加好友 发短信
等级:超级版主 帖子:107739 积分:548028 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/10 11:22:00 [只看该作者]


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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2020/4/10 11:53:00 [只看该作者]

Date.Today.Year 改成实际的日期怎么改呢?

比如:2019.08.31-[出生日期]


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


加好友 发短信
等级:超级版主 帖子:107739 积分:548028 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/10 12:11:00 [只看该作者]

dim d as date = #08/31/2019#

Dim tp As TimeSpan = d - CDate(e.DataRow("出生日期"))

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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2020/4/10 12:15:00 [只看该作者]

foxtable真是太博大精深、变化多端了。谢谢。


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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2020/4/10 16:24:00 [只看该作者]

这么写为什么不行?

 

If e.DataCol.name = "出生日期" Then
    If e.newvalue <> Nothing Then
        Dim a As Date = #08/31/2019#
        Dim d As Date = New Date(e.newvalue.substring(0,4), e.newvalue.substring(5,2), 1)
        Dim y As Integer = d.year
        If format(d, "MMdd") <= Format(a, "MMdd") Then
            e.DataRow("年龄") = a.year - y
        Else
            e.DataRow("年龄") = a.year  - y -1
        End If
    Else
        e.DataRow("年龄") = Nothing
    End If
End If


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


加好友 发短信
等级:超级版主 帖子:107739 积分:548028 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/10 16:33:00 [只看该作者]

帮助的用法有什么问题?为什么不使用帮助的方法?http://www.foxtable.com/webhelp/topics/2647.htm
[此贴子已经被作者于2020/4/10 16:33:17编辑过]

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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2020/4/10 16:39:00 [只看该作者]

老师,不好意思,帮助的例子是四舍五入,我这个要求是只舍不入。所以想用这个。

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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2020/4/10 17:02:00 [只看该作者]

明白了,本来就是整除。/

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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2020/4/10 17:16:00 [只看该作者]

还是不行,算出来的年龄有的正确,有的不正确。原因就是取整而不是五入。

Math.Round(tp.TotalDays / 365.2422,2)


 回到顶部
总数 13 1 2 下一页