搜了半天都是open已经存在的xls文件,我想新建,用什么方法?excel对象有没有这个方法?

解决方案 »

  1.   

    一个比较简单的办法,就是事先准备好一个Excel模板文件,使用CopyFile复制它创建一个新的Excel文件,这个文件你可以自己命名,还可以以特定的格式生成。非常实用。
      

  2.   

    这个办法备选。
    excel能不能直接创建文件呢?
      

  3.   

    使用File System Object(FSO)来创建也不错,FSO.CreateFile()
      

  4.   

    Workbooks.Add   
    示例:Dim xlsApp As New Excel.Application
    xlsApp.Visible = False
    Dim xlsBook As Excel.Workbook
    Set xlsBook = xlsApp.Workbooks.Add   '添加新工作簿
    xlsBook.SaveAs "c:\ddd.xls"    '保存xlsBook.Close
    xlsApp.Quit
    Set xlsApp = Nothing
    Set xlsBook = Nothing
      

  5.   

    没明白你的意思,我现在是想把n多数据库里的数据导出到excel
      

  6.   

    本帖最后由 bcrun 于 2012-07-28 10:34:58 编辑
      

  7.   

    速度并不慢,没感到要用2~3秒,你测试慢可能的原因是杀软所谓的文档保护等等原因作怪,而且慢的过程应该是创建Excel.Application时,创建工作簿过程并不慢;系统应当使用的是shell方式,通过DDE发送新建命令完成,这可以从xls文件类型的新建命令中看到
      

  8.   


    使用的是shell方式,通过DDE发送新建命令完成,这个VB要写的话如何写呢??? 那个慢就是创立组件的时候卡一点
      

  9.   

    DDE已经是一个古董级的技术了,现在已没人采用;VB中用LinkExecute发送DDE命令,命令格式由命令执行端决定,新建xls的DDE命令为"[new("%1")]",详细可msdn、百度、谷歌“DDE技术”;
    创建组件本质上也是Shell,不过由于EXCEL提供了命令行启动参数,使用特定参数启动(系统用的是/e /n,是啥含义不知道)应比用默认参数启动(创建组件)快一点也是正常的。