你可以把逐格添数,改为Range.就是先在你的程序里面构造一个大的Range,然后粘贴到Excel里面.这样你看看会不会好一点我的情况和你得差不多啊,也要什么周报,月报,自定义报表....无穷无尽,很烦的!

解决方案 »

  1.   

    不知你用的是什么后台,如果是SQL SERVER,你可以采用SQL SERVER中的DTS生成EXECL表格,速度很快的!当然,DTS得在VB中做下修改(按照你的需求)
      

  2.   

    nik_Amis(Azrael) 
    粘貼行不通,每個sheet都有固定的格式。
    zhantx(mdd) :
    DTS生成EXECL表格?
    那是不是我要把一切抓數據的動作放到存儲過程裏面??
    你用過DTS?
    多謝兩位!
      

  3.   

    你的数据量有多大?几十万条?
    我的报表里面,最多的几十个sheet,最多也不过1,2分钟啊?
    你怎么会那么长时间?
      

  4.   

    在原来也在VB中用EXCEL做报表,其实不慢啊,是你代码编写的问题,你不要写太多打印设置问题,另外用假存盘,其它。
    你注意检查检查你的代码吧
      

  5.   

    你单步跟踪一下,看看瓶颈是出现在什么地方>?有时候可能不是在与Excel交互的时候出现的可能是你在从数据库取数的时候
      

  6.   

    我做了一个报表,有5000多条数据,大概也有几十个Sheet,只要一到二分钟,查一下代码吧!要成批的把数据插入到Sheet,不要一个网格一个网格的插入数据这样速度会奇慢,
      

  7.   

    cmt123(cmt) 老大,你說的很對,
    我就是一個格一個格地插入的數據,請問你怎樣成批的把数据插入到Sheet呢?
    再次感謝!
      

  8.   

    Application.ScreenUpdating属性设为False了吗
    或者逐个写range时,让Excel.visible=false这样,省掉了Cpu处理显示的时间,或许会快一点!
      

  9.   

    bairgv():
    多謝你,我今天測試了,改Application.ScreenUpdating?性後速度提高了15%.了不起了.
    但還是很慢啊!
    不知兄弟們還有辦法沒有阿.
    急救!
    cmt123(cmt) ???你小子怎麼蒸發了?
      

  10.   

    感謝諸位兄弟姊妹!在網友的幫助下我高定了.
    另外有點補充我受難的心得:
    ===================================================
    如何提高VBA程序速度
    ===================================================
    1.最好用模版Excel文件,因為自己創建的如果要頁面設置的話,速度會像生小孩一樣慢!
    2.最好不要用Cell對象來操作,用Range對象會快些.
    3.像user_hj(office之友)個們所說,先将计算结果放在数组中,在数组中计算是非常快的!然后用Range对象的FormulaArray属性将数组一次性复制到整个Range对象中。這很管用.速度會提高一倍!!!!!多謝他!
    4.將Application.ScreenUpdating属性设为False.速度會提高15%-25%.好了,我就寫這麼多,歡迎大家交流,和补充.
    user_hj(office之友)老大,你果然牛.
    速度是快了一倍.
    請你道http://www.csdn.net/expert/topic/915/915177.xml?temp=.2821466
    上去領分.再次感謝.另外感謝諸位兄弟姊妹!
    另外有點補充我受難的心得:
    ===================================================
    如何提高VBA程序速度
    ===================================================
    1.最好用模版Excel文件,因為自己創建的如果要頁面設置的話,速度會像生小孩一樣慢!
    2.最好不要用Cell對象來操作,用Range對象會快些.
    3.像user_hj(office之友)個們所說,先将计算结果放在数组中,在数组中计算是非常快的!然后用Range对象的FormulaArray属性将数组一次性复制到整个Range对象中。這很管用.速度會提高一倍!!!!!多謝他!
    4.將Application.ScreenUpdating属性设为False.速度會提高15%-25%.好了,我就寫這麼多,歡迎大家交流,和补充.
    我新開了個交流的帖子,希望大家去發表意見.
    http://www.csdn.net/expert/topic/934/934155.xml?temp=.2673151
    我的Mail:[email protected]