楼上!能详细点么!
最好用sql

解决方案 »

  1.   

    用activereports啊很好用的啊我做过比你复杂得多的报表啊
      

  2.   

    用EXCEL,完全支持SQL
    用法: 在VB里添加EXCEL Object组间和ADO
    然后,哈哈
    sub haha()
    { dim rs as adodb.recordset
      dim conn as new adodb.connection
      dim exlapp as new excel.application
      dim ws as excel.worksheet
      dim wb as exce.workbook  exlapp.visible=false
      set wb=exlapps.workbooks.add
      set ws=wb.worksheets(1)
      
      conn.open ....
      set rs=conn.execute("select * from mytable")
      do while not rs.eof
         ws.cells(row,1)=rs!fielda
         ws.cells(row,2)=rs!fieldb
        ....
        row=row+1
        rs.movenext
      loop
      wb.saveas myfile.xls
      exlapp.quit
      set exlapp=nothing
      conn.close
      set conn=nothing
    end sub
      

  3.   

    zephyr_zhao(zephyr) 
    不好意思,你们还没理解我的意思!
    报表里的值是通过数据库中表的字段值取出来的!
    生成报表的时候必须根据字段值进行计算。求增长率公式为:
    (客户A的2002年1月的数据-2001年1月的数据)/客户A的2002年1月的数据
    而表的结构是
    客户  年  1月。。多谢啦,
    老夫已解决。
    不过在寻求更好的办法。希望大家能帮我,要编程实现!
      

  4.   

    计算也不难啊
    你可以在代码里计算,也可以借用EXCEL 的公式计算
    cells(4,1)="=(B1-A1)/C1"
      

  5.   

    本人推荐一个控件:curtprinter,很好用;若报表设计的很复杂,如横横竖竖拆分的很乱,则最好调用execl,可以先画好一个表作模子,每次调用时复制一个新的表,然后对新表进行操作就行了。