以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]这段代码执行速度很慢,请老师们指点  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=44611)

--  作者:zyqzyy
--  发布时间:2014/1/5 0:27:00
--  [求助]这段代码执行速度很慢,请老师们指点

要把疾病编码前三位字符C00 - D48 的相应列“疾病分类”自动改为“肿瘤”,代码如下,但是多次出现死机,单行改变内容能实现,请指点!

If e.DataCol.name = "疾病编码" Then
    Dim Products As List(Of String)
    Products = DataTables("ICD10").GetValues("疾病编码")
    For Each Product As String In Products
        If Product.IndexOf(".") <> -1 Then
            Product = Product.Remove(Product.IndexOf("."))
        End If
        If Product = "C00" Then
            Continue For
        ElseIf Product = "D48" Then
            Exit For
        End If
        e.DataRow("疾病分类") = "肿瘤"
    Next
End If

 


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


--  作者:e-png
--  发布时间:2014/1/5 1:10:00
--  

你的图跟你前面的表达有点不配套呢,

DataTables("ICD10") 是当前表吗?


--  作者:zyqzyy
--  发布时间:2014/1/5 10:39:00
--  
图片上有表名是“ICD10”,是当前表,第一列是“疾病编码”,最后一列是“疾病分类”。
[此贴子已经被作者于2014-1-5 10:46:58编辑过]

--  作者:有点酸
--  发布时间:2014/1/5 10:42:00
--  
这样写代码怎么可能高效呢? 具体说说你想实现什么目的吧。
--  作者:y2287958
--  发布时间:2014/1/5 10:44:00
--  
俺觉得还是上个文件得到的回复会高效些
--  作者:zyqzyy
--  发布时间:2014/1/5 10:48:00
--  
马上就上个例子!
--  作者:cqlwsam
--  发布时间:2014/1/5 10:49:00
--  
ICD-10的疾病编码原来是个excel文件,你为什么不在excel里替换后再导入,这样多好。
--  作者:cqlwsam
--  发布时间:2014/1/5 10:50:00
--  
你是医院里干嘛的?可以交流一下。
--  作者:zyqzyy
--  发布时间:2014/1/5 11:00:00
--  
实现目的:按疾病的不同编码段,比如A00 - C35之间的归类为“传染性疾病”,C36 - D48之间的归类为“肿瘤”等等!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目4.rar


--  作者:cqlwsam
--  发布时间:2014/1/5 11:12:00
--  
写代码可以实现,但比较麻烦。我是在excel中,新增一列“疾病种类”,编好后在导入。因为这种东西在foxtable中只用一次,以后基本就这样了。就如使用拼音简码一样。因为我也弄个这个东东!
[此贴子已经被作者于2014-1-5 11:13:03编辑过]