以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求DataColChanged事件代码  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=77249)

--  作者:1327853827
--  发布时间:2015/11/13 18:58:00
--  求DataColChanged事件代码
我的表是一个体检统计表,给体检者做完检查后填入各项检查的结果,共有4组:其中“高压、低压”是一组(就是血压),“空腹血糖”自己一组,“红细胞,白细胞,血红蛋白,血小板”是一组(就是血液分析),“谷丙,谷草,总胆固醇,甘油三脂”是一组(就是肝功能)。
有异常的话,就填入异常的名称和值,每一组算一项,正常的组不,不正常的组先(体检有异常1),再(体检有异常2),(体检有异常3),(体检有异常4)。也就是要求有一组异常的时候要填入(体检体检有异常1),有二组异常的时候要填入(体检体检有异常1)和(体检体检有异常2),有三组异常的时候要填入(体检体检有异常1)、(体检体检有异常2)(体检体检有异常3),有四组异常的时候都填。样式如项目文件夹里的(应该是这样的格式)excel表的样式。请教专家代码该怎样写?费费心,我先谢谢了。
判定异常标准如下:
If e.DataRow("高压") >= 140 OrElse e.DataRow("低压") >= 90 Then
    e.DataRow("体检有异常1") = "血压异常:" & e.DataRow("高压") & "/" & e.DataRow("低压") & "mmHg"
End If

If e.DataRow("空腹血糖") <= 3.60 OrElse e.DataRow("空腹血糖") >= 7.00 Then
    e.DataRow("体检有异常2") = "血糖异常:" & e.DataRow("空腹血糖") & "mmol/L"
End If

If e.DataRow("红细胞") <= 3.50 OrElse e.DataRow("红细胞") >= 5.50 OrElse e.DataRow("白细胞") <= 4.00 OrElse e.DataRow("白细胞") >= 10.00 OrElse e.DataRow("血红蛋白") <= 110.00 OrElse e.DataRow("血红蛋白") >= 150.00 OrElse e.DataRow("血小板") <= 100 OrElse e.DataRow("血小板") >= 300 Then
    e.DataRow("体检有异常3") = "血液分析异常:" & (所有不正常项的值?)
End If

If e.DataRow("谷丙") >= 31 OrElse e.DataRow("谷草") >= 37 OrElse e.DataRow("总胆固醇") <= 3.10 OrElse e.DataRow("总胆固醇") >= 5.60 OrElse e.DataRow("甘油三脂") >= 2.30  Then
    e.DataRow("体检有异常4") = "肝功能分析异常:" & (所有不正常项的值?)
End If

--  作者:大红袍
--  发布时间:2015/11/13 19:09:00
--  

比如

 

Dim str As String = ""

 

If e.DataRow("红细胞") <= 3.50 OrElse e.DataRow("红细胞") >= 5.50  Then str &= "红细胞,"

If e.DataRow("白细胞") <= 4.00 OrElse e.DataRow("白细胞") >= 10.00  Then str &= "白细胞,"

 

e.DataRow("体检有异常3") = "血液分析异常:" & str.trim(",")
--  作者:1327853827
--  发布时间:2015/11/13 19:44:00
--  

谢谢,我试试