以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]Excel报表 代码  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=52613)

--  作者:zyqzyy
--  发布时间:2014/6/19 9:48:00
--  [求助]Excel报表 代码

’代码运行慢,结果没有数据。请大大们指点!

For r As Integer = 4 To 15
    For c As Integer = 7 To 9
        For n As Integer = 35 To 85  Step 5
            For n2 As Integer = 40 To 85 Step 5
Sheet(r, c).Value = DataTables("门诊日志").Compute("count(姓名)", "年龄 >= \'"& n &"\'  And 年龄 <  \'"& n2 &"\'  And 性别 = \'男\' and (收缩压 >= 140 or 舒张压 >= 90)")

            Next
        Next
    Next
Next


--  作者:有点甜
--  发布时间:2014/6/19 9:52:00
--  

  你加入msgbox测试,弹出对应的值,看是否正确 msgbox(DataTables("门诊日志").Compute("count(姓名)", "年龄 >= \'"& n &"\'  And 年龄 <  \'"& n2 &"\'  And 性别 = \'男\' and (收缩压 >= 140 or 舒张压 >= 90)"))

 

 至于慢的问题,看代码,应该不会太慢,但代码必须这样写。


--  作者:Bin
--  发布时间:2014/6/19 9:53:00
--  
 你想实现什么效果? 4个嵌套循环没意义,你这样后面的覆盖前面的.

现在是得出空白结果 还是?

最好上个例子.

--  作者:zyqzyy
--  发布时间:2014/6/19 10:07:00
--  

好,上个例子,现在的例子是直接赋值,能实现目的和效果,但代码太繁琐

代码在窗口的 报表 按钮中

 还有一个目的没实现:按选择的月份上报,请指点!

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:首诊血压检测报表_1.4.zip

[此贴子已经被作者于2014-6-19 10:08:50编辑过]

--  作者:Bin
--  发布时间:2014/6/19 10:09:00
--  
没什么好办法.2层循环是必须得

但是内2层的循环我没看懂

For n As Integer = 35 To 85  Step 5
            For n2 As Integer = 40 To 85 Step 5
Sheet(r, c).Value = DataTables("门诊日志").Compute("count(姓名)", "年龄 >= \'"& n &"\'  And 年龄 <  \'"& n2 &"\'  And 性别 = \'男\' and (收缩压 >= 140 or 舒张压 >= 90)")

            Next
        Next


你这样循环 和直接取循环最后一次的结果有什么区别?


--  作者:zyqzyy
--  发布时间:2014/6/19 10:11:00
--  
循环后没有取得数据,直接赋值正常。
--  作者:zyqzyy
--  发布时间:2014/6/19 10:14:00
--  
以下是引用Bin在2014-6-19 10:09:00的发言:
没什么好办法.2层循环是必须得

但是内2层的循环我没看懂

For n As Integer = 35 To 85  Step 5
            For n2 As Integer = 40 To 85 Step 5
Sheet(r, c).Value = DataTables("门诊日志").Compute("count(姓名)", "年龄 >= \'"& n &"\'  And 年龄 <  \'"& n2 &"\'  And 性别 = \'男\' and (收缩压 >= 140 or 舒张压 >= 90)")

            Next
        Next


你这样循环 和直接取循环最后一次的结果有什么区别?


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

--  作者:有点甜
--  发布时间:2014/6/19 11:26:00
--  

 呃,你写得很乱,而且思路错了。帮你做了一下,代码如下。

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:首诊血压检测报表_1.4.rar

[此贴子已经被作者于2014-6-19 11:26:48编辑过]

--  作者:zyqzyy
--  发布时间:2014/6/19 16:41:00
--  
谢谢