Foxtable(狐表)用户栏目专家坐堂 → [求助]根据“出生年月日”列,求“年龄”的表达式。


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

主题:[求助]根据“出生年月日”列,求“年龄”的表达式。

帅哥哟,离线,有人找我吗?
八路军参谋长
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 八路军参谋长
等级:婴狐 帖子:77 积分:667 威望:0 精华:0 注册:2008/8/31 21:18:00
[求助]根据“出生年月日”列,求“年龄”的表达式。  发帖心情 Post By:2010/6/7 9:12:00 [只看该作者]


根据“出生年月日”列,求“年龄”的表达式。

狐表

 

谢谢


 回到顶部
美女呀,离线,留言给我吧!
yangming
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2010/6/7 10:07:00 [只看该作者]

表达式的函数有限,不要用吧,还是用表事件吧 ,帮助中有现成的示例,输入年龄就能搜到

示例

例如年龄列由出生日期计算得出,我们将DataColChanged事件设为:

If e.DataCol.Name = "出生日期" Then
    If
e.DataRow.IsNull("出生日期") Then '如果没有输入出生日期
       
e.DataRow("年龄") = Nothing '则清空年龄
    Else
   
    '否则计算年龄
       
e.DataRow("年龄") = Date.Today.Year - e.DataRow("出生日期").Year

    End If
End If

如果到了明年,需要重新计算年龄列,但是除非你重新输入出生日期,否则上面的代码是不会重算年龄的。
不过你可以通过下面的代码,强行针对出生日期列触发DataColChanged,效果就像你重新输入了出生日期一样:

DataTables("员工").DataCols("出生日期").RaiseDataColChanged()

[此贴子已经被作者于2010-6-7 10:08:25编辑过]

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


加好友 发短信 八路军参谋长
等级:婴狐 帖子:77 积分:667 威望:0 精华:0 注册:2008/8/31 21:18:00
  发帖心情 Post By:2010/6/7 10:09:00 [只看该作者]

我只整“应用篇”的

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


加好友 发短信 八路军参谋长
等级:婴狐 帖子:77 积分:667 威望:0 精华:0 注册:2008/8/31 21:18:00
  发帖心情 Post By:2010/6/7 10:16:00 [只看该作者]

看样子,逼着我学开发篇了

 回到顶部
美女呀,离线,留言给我吧!
yangming
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2010/6/7 10:36:00 [只看该作者]

表达式无法做到,学学开发篇又何妨呢,呵呵
[此贴子已经被作者于2010-6-7 10:36:24编辑过]

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


加好友 发短信
等级:二尾狐 帖子:542 积分:4243 威望:0 精华:4 注册:2008/9/1 8:27:00
  发帖心情 Post By:2010/6/7 18:15:00 [只看该作者]

下面的可供参考: http://www.foxtable.com/dispbbs.asp?boardid=2&Id=6388&page=23 是用表达式做的,但需指定起止日期。如果计算当前的年龄,那就要用代码了。
[此贴子已经被作者于2010-6-7 18:16:29编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
八路军参谋长
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 八路军参谋长
等级:婴狐 帖子:77 积分:667 威望:0 精华:0 注册:2008/8/31 21:18:00
  发帖心情 Post By:2010/6/7 18:59:00 [只看该作者]

先谢谢了。慢慢看去,我


 回到顶部