现在需要实现以下功能
一个MSHFlexGrid 10000行 5 列 
需要将其输出到Excel有两步要处理 
1 将 Grid的数据通过行列循环放入一个数组,在将数组写入Excel
2 将Grid按行循环 ,根据Grid的每行行高调整 Excel对应的行高现在的问题是 
只执行步骤1 需要 2秒  
只执行步骤2 需要 20秒 但是连起来执行确耗时53秒不知是什么原因,请帮忙分析下已经在步骤1中 对二维数组进行了释放 
For Each Item In MSCellDataArr()
      Set Item = Nothing
Next
Erase MSCellDataArr
ReDim MSCellDataArr(1, 1)没效果 还是慢 51秒

解决方案 »

  1.   

    2 将Grid按行循环 ,根据Grid的每行行高调整 Excel对应的行高
    这个毫时间了
    可以用EXCEL自动调整,比如
    XLWorkSheet.Columns("A:A").EntireColumn.AutoFit
      

  2.   

    可以参考这个
    XLWorkSheet.Range(XLWorkSheet.Cells(2, 3), XLWorkSheet.Cells(6, 8)).EntireRow.AutoFit
      

  3.   

    我在步骤1 前 和步骤2后  分别放置了两个 Msgbox Now
    所耗时间就是这样得出的
    联合运行多了30秒,不知何故
    不知是不是 二维数组对内存的占用造成的
      

  4.   

    '现在需要实现以下功能
    '一个MSHFlexGrid 10000行 5 列  
    '需要将其输出到Excel
    是否可以更换控件?用VsFlexGrid控件的话,你的要求都可以自动实现。重画界面是你程序耗时长的原因,比如说赋值到界面上这种操作,当然了,首当其冲的是调整控件宽度这样的动作。