以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  怎么计算统计年龄大于或小于14岁  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=62505)

--  作者:lrh9537
--  发布时间:2015/1/3 13:09:00
--  怎么计算统计年龄大于或小于14岁


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

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

图片点击可在新窗口打开查看此主题相关图片如下:3.png
图片点击可在新窗口打开查看
如图,怎么计算统计年龄大于或小于14岁?

如计算2014.9月,就是截止9月30日,独生子女表的子女出生日期如果大于14岁也就是大于2014.9.30日就统计在大于14岁这一列内,如果小于14岁就统计在小于14岁列。

我定义的有:

Dim year As WinForm.ComboBox = e.Form.Controls("年")
Dim month As WinForm.ComboBox = e.Form.Controls("月")
Dim csrq As WinForm.DateTimePicker = e.Form.Controls("DateTimePicker1")

Dim FirstDay As Date = New Date(year.Text,1,1) \'第一天
Dim LastDay As Date = New Date(year.Text,month.Text,Date.DaysInMonth(year.Text,month.Text)) \'最后一天

 

请教怎么写代码表示?


--  作者:czy
--  发布时间:2015/1/3 13:52:00
--  
何不在独生子女表增加一列年龄列,计算子女年龄代码:

For Each dr As DataRow In DataTables("独生子女表").DataRows
    dr("年龄") = DateDiff("yyyy",dr("子女出生日期"),Today)
Next

这样就很方便统计了

--  作者:lrh9537
--  发布时间:2015/1/3 14:38:00
--  

这个只能算出到今天是几岁了,可是表达不了截止到2014.12.31独生子女出生日期大于或小于14岁,截止到2014.9.30独生子女出生日期大于或小于14岁,或截止到2014.6.30独生子女出生日期大于或小于14岁,或截止到2014.3.31独生子女出生日期大于或小于14岁,这该如何统计?

 

定义一个表达式,判断出生日期大于或小于14岁,在12.31日之前,在9.30日之前,然后得到一个统计数,该如何写?

 

 r("领独生子女证人数_0至14岁") = DataTables("独生子女").Compute("Count(_Identify)", filter & "And                       " )
 r("领独生子女证人数_14岁以上") = DataTables("独生子女").Compute("Count(_Identify)", filter & "And                       " )

[此贴子已经被作者于2015-1-3 14:42:40编辑过]

--  作者:czy
--  发布时间:2015/1/3 14:46:00
--  
可以定义的呀

Dim FirstDay As Date \'定义一个开始日期
Dim LastDay As Date \'定义一个截止日期
For Each dr As DataRow In DataTables("独生子女表").DataRows
    dr("年龄") = DateDiff("yyyy",FirstDay,LastDay)
Next

或上传示例文件

--  作者:lrh9537
--  发布时间:2015/1/3 14:51:00
--  
不好意思,重新用这个
打开后在季报表,生成报表按钮里
[此贴子已经被作者于2015-1-3 15:42:53编辑过]

--  作者:lrh9537
--  发布时间:2015/1/3 15:12:00
--  

老师解决好了吗?

 


--  作者:czy
--  发布时间:2015/1/3 16:00:00
--  
不知道理解的对不对

……
Dim FDay As Date = New Date(year.Text,month.Text,1) \'月第一天
For Each dr As DataRow In DataTables("独生子女").DataRows
    dr("年龄") = DateDiff("yyyy",dr("子女出生日期"),LastDay)
Next
……

    r("期末已婚育龄妇女") = ……
……
    r("领独生子女证人数_0至14岁") = DataTables("独生子女").Compute("Count(_Identify)", filter & " And 年龄 <= 14  ")
    r("领独生子女证人数_14岁以上") = DataTables("独生子女").Compute("Count(_Identify)", filter & " And 年龄 > 14  ")
    r("期末选用各种避孕方法人数_男性绝育") =……
[此贴子已经被作者于2015-1-3 16:02:13编辑过]

--  作者:lrh9537
--  发布时间:2015/1/3 16:09:00
--  
For Each dr As DataRow In DataTables("独生子女").DataRows
dr("年龄") = DateDiff("yyyy",dr("子女出生日期"),LastDay)
Next

 

 

应该计算到2014.12.31日是几岁, 缺个条件,子女出生日期<=LastDay


--  作者:lrh9537
--  发布时间:2015/1/3 16:11:00
--  
老师你把其他的删除掉吧,只留重点的
--  作者:lrh9537
--  发布时间:2015/1/3 16:14:00
--  
四个月的数字是一样的,应该缺少什么条件