我用 javascript 调用 ActiveXObject("Excel.Application") 实现导出excel 但是数据量太大只能每个单元格赋值,所以求一个javascript 导出大量数据excel的方法这是我写的方法   // var data = [][];
        for (var i = 0; i < data.length; i++) {
            for (var k = 0; k < data[i].length; k++) {
                xlsSheet.Cells(i + hcount + 1, k + 1).Value2 = data[i][k];
            }
        }
一个一个单元格赋值很慢我用C#写过一个和二维数组赋值特别快 
 //string[,] dsource = new string[n,m];
 
 xlsSheet.Range[ws.Cells[5, 1], ws.Cells[siteCount + 4, arrLength]].Value2 = dsource;
javascript 不支持二维数组 所以不能像C# 那样直接赋值
求解

解决方案 »

  1.   

    我也遇到这个大量数据导出的问题了,2W数据导出居然耗时40分钟,可不可以发个完整实例给我,就是你那个C#版和二维数组那样的,我是web页面请求的,谢谢!地址:[email protected]
      

  2.   

    用VBS数组可以直接写入,记得允许控件运行<script language="vbscript">
    dim arr(9999,4)
    for i=0 to 9999
    for j = 0 to 4
    arr(i,j)=i*j
    next
    next
    set oXL = CreateObject("Excel.Application")
    oXL.Visible = true
    oXL.ScreenUpdating=false
    set oWB = oXL.Workbooks.Add
    set oSheet = oWB.ActiveSheet
    set xlsheet = oWB.Worksheets(1)
    for i=oWB.Worksheets.count to 2
    oWB.Worksheets(i).Delete()
    next
    oSheet.Range("a1").resize(10000,5)=arr
    oXL.ScreenUpdating=true
    set oXL=nothing
    </script>