当前位置:编程学习 > VB >>

vb6如果新建excel文件?不是open

搜了半天都是open已经存在的xls文件,我想新建,用什么方法?excel对象有没有这个方法? --------------------编程问答-------------------- 一个比较简单的办法,就是事先准备好一个Excel模板文件,使用CopyFile复制它创建一个新的Excel文件,这个文件你可以自己命名,还可以以特定的格式生成。非常实用。 --------------------编程问答--------------------
引用 1 楼  的回复:
一个比较简单的办法,就是事先准备好一个Excel模板文件,使用CopyFile复制它创建一个新的Excel文件,这个文件你可以自己命名,还可以以特定的格式生成。非常实用。


右键点新建的话,系统也是复制的? --------------------编程问答--------------------
引用 1 楼  的回复:
一个比较简单的办法,就是事先准备好一个Excel模板文件,使用CopyFile复制它创建一个新的Excel文件,这个文件你可以自己命名,还可以以特定的格式生成。非常实用。

这个办法备选。
excel能不能直接创建文件呢? --------------------编程问答-------------------- 使用File System Object(FSO)来创建也不错,FSO.CreateFile() --------------------编程问答-------------------- 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 楼  的回复:
Workbooks.Add   
示例:
VB code

Dim xlsApp As New Excel.Application
xlsApp.Visible = False
Dim xlsBook As Excel.Workbook
Set xlsBook = xlsApp.Workbooks.Add   '添加新工作簿
xlsBook.SaveAs "c:\ddd.xls"    '……


这样速度太慢了,要2-3秒,可是系统新建的话是立刻无延迟就出来了,系统是复制的还是怎么弄的? --------------------编程问答--------------------
引用 5 楼  的回复:
Workbooks.Add  
示例:

VB code


Dim xlsApp As New Excel.Application
xlsApp.Visible = False
Dim xlsBook As Excel.Workbook
Set xlsBook = xlsApp.Workbooks.Add   '添加新工作簿
xlsBook.SaveAs "c:\ddd.xl……

标准答案啊,结贴 --------------------编程问答--------------------
引用 6 楼  的回复:
引用 5 楼 的回复:

Workbooks.Add
示例:
VB code

Dim xlsApp As New Excel.Application
xlsApp.Visible = False
Dim xlsBook As Excel.Workbook
Set xlsBook = xlsApp.Workbooks.Add '添加新工作簿
xlsBook.SaveAs "c:……

没明白你的意思,我现在是想把n多数据库里的数据导出到excel --------------------编程问答-------------------- --------------------编程问答--------------------
引用 6 楼  的回复:
引用 5 楼 的回复:

Workbooks.Add
示例:
VB code
Dim xlsApp As New Excel.Application

……

这样速度太慢了,要2-3秒,可是系统新建的话是立刻无延迟就出来了,系统是复制的还是怎么弄的?

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

Workbooks.Add
示例:
VB code
Dim xlsApp As New Excel.Application

……

这样速度太慢了,要2-3秒,可是系统新建的话是立刻无延迟就出来了,系统是复制的还是怎么弄的?
速度并不慢,没感到要用2~3秒,你测试慢可能的原因是杀软所谓的文档保护等等原因作怪,而且慢的过程……


使用的是shell方式,通过DDE发送新建命令完成,这个VB要写的话如何写呢??? 那个慢就是创立组件的时候卡一点 --------------------编程问答-------------------- DDE已经是一个古董级的技术了,现在已没人采用;VB中用LinkExecute发送DDE命令,命令格式由命令执行端决定,新建xls的DDE命令为"[new("%1")]",详细可msdn、百度、谷歌“DDE技术”;
创建组件本质上也是Shell,不过由于EXCEL提供了命令行启动参数,使用特定参数启动(系统用的是/e /n,是啥含义不知道)应比用默认参数启动(创建组件)快一点也是正常的。
补充:VB ,  基础类
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,