Public xlApp As Excel.Application
Public myWorkbook As Excel.Workbook-------------------------------------------
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = False
xlApp.Workbooks.Add
Set myWorkbook = xlApp.Workbooks(1)
....//增加数据
call SQL2Execl()
myWorkbook.SaveAs "c:\test.xls"
myWorkbook.Close False
xlApp.Quit
Set xlApp = Nothing
-------------------------------------
sub SQL2Execl()
   myWorksheet.Range("A1").Value = "这里是A1,其他的数据填充的方法和这里的一样"
end sub

解决方案 »

  1.   

    上面的代码是受到安全限制的,为了脱离安全限制,你只能自己编写ActiveX控件,并将上面的代码在你的控件中实现。
      

  2.   

    要使用createobject创建对象,或用控件
    因为脚本语言不会允许你创建一个二进制文件
    当然你也可以使用FSO,创建文本格式的文件,只要格式正确,excel也可以帮你打开
    例如:
    no1,no2,no3,no4
    as,99,io,pp
    bs,88,lo,lp
    你把这段数据分别存为csv和xls文件,看看效果
    用数据捆绑技术可以从EXCEL读取数据到页面。
      

  3.   

    to qanymuic:数据捆绑技术?卧室蔡鸟.请详细点.
      

  4.   

    数据捆绑的例子:(下面这段从网上复制迩来,有没有错误,我没有检查)这是一个在客户端的简单的学生成绩查询系统,不需要服务器的支持。数据库内容为:xingmin xingbie haoma yuwen wuli yingyu shuxue 
    aa f 1111 60 80 98 78 
    bb t 2222 78 78 94 54 
    cc f 3333 85 56 94 80 
    dd f 4444 84 85 96 94 
    ee t 5555 64 74 80 91 
    ff t 6666 68 85 75 95 
    此数据库可以用EXECL生成,然后用另存为功能保存为文本文件,各列之间是数据用","来分割,且该文本文件的扩展名为.csv,这里假设是chengjibiao.csv,下面是数据库转为文本文件后的内容:xingmin,xingbie,haoma,yuwen,wuli,yingyu,shuxue
    aa,f,1111,60.00,80.00,98.00,78.00 
    bb,t,2222,78.00,78.00,94.00,54.00 
    cc,f,3333,85.00,56.00,94.00,80.00
    dd,t,4444,84.00,85.00,96.00,94.00
    ee,t,5555,64.00,74.00,80.00,91.00
    ff,t,6666,68.00,85.00,75.00,95.00
    下面是查询程序:<html>
    <head>
    <title>无标题文档</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312"><!--这段代码是显示和隐藏层的,不需要修改-->
    <script language="JavaScript">
    <!--
    <!--
    function MM_reloadPage(init) { //reloads the window if Nav4 resized
    if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
    else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
    }
    MM_reloadPage(true);
    // -->function MM_findObj(n, d) { //v4.01
    var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
    if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
    for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
    if(!x && d.getElementById) x=d.getElementById(n); return x;
    }function MM_showHideLayers() { //v3.0
    var i,p,v,obj,args=MM_showHideLayers.arguments;
    for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
    obj.visibility=v; }
    }
    //-->
    </script><!--这里就是关键的查询函数-->
    <script language="jscript">
    function setFilter(value){ //value接收表单的值
    chengji.FilterColumn="haoma";//haoma是查询关键字
    chengji.FilterValue=value;
    chengji.FilterCriterion="=";//查询条件是等于,这里的运算符号可以是:>,<,=,<=,>=,<>,其中<>代表不等于,也只有在这里才能用它来代表不等于,其他的javascript中的不等于是:!=
    chengji.Reset();//显示结果
    }
    </script></head><body bgcolor="#FFFFFF" text="#000000"><form>
    <p><input type="text" name="T1" size="20" value="输入查询号码">
    <input type="button" value="查询" onclick="javascript:setFilter(T1.value);MM_showHideLayers('Layer1','','show')"></p>
    </form>
    <div id="Layer1" style="position:absolute; left:30px; top:50px; width:262px; height:10px; z-index:3;visibility: hidden"> 
    //定义一个隐藏层,因为默认情况下,数据库是全部显示的,所以我们必须将其隐藏。<!--下面就是插入了引用数据库csv的控件,并设置一个ID号,这样一来就可以在HTML元素中引用数据库--> 
    <object classid="clsid:333C7BC4-460F-11D0-BC04-0080C7055A83" id=chengji>
    <param name="DataURL" VALUE="chengjibiao.csv">
    <param name="UseHeader" VALUE="True">
    </object><table id=chengjitab border=1 DATASRC="#chengji"> //把表格和数据库进行连接。
    <thead>
    <tr>
    <th>姓名<th>性别<th>号码<th>语文<th>物理<th>英语<th>数学
    <tbody>
    <tr><!--各单元格数据也和数据库相连接-->
    <td><span DATAFLD=xingmin></span>
    <td><span DATAFLD=xingbie></span>
    <td><span DATAFLD=haoma></span>
    <td><span DATAFLD=yuwen></span>
    <td><span DATAFLD=wuli></span>
    <td><span DATAFLD=yingyu></span>
    <td><span DATAFLD=shuxue></span>
    </table>
    </div></body>
    </html>
    大体是插入一个数据捆绑控件,然后将页面元素和数据梆定。在脚本中可以操纵这个数据集(用recordset对象)