您的位置:程序门 -> vb -> vba



用vba导出到excel,但只见cpu闪了下,不见excel表弹出,请大家指教,谢~


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


用vba导出到excel,但只见cpu闪了下,不见excel表弹出,请大家指教,谢~[已结贴,结贴人:ymh043239]
发表于:2008-01-22 23:27:17 楼主
用vba导出到excel,但只见cpu闪了下,不见excel表弹出,请大家指教,谢~代码如下:

private   sub   command3_click()
dim   xexcel   as   object
dim   xworkbook   as   object
dim   xworksheet   as   object

set   xexcel   =   createobject("excel.application")
xexcel.visible   =   false
set   xworkbook   =   xexcel.workbooks.add
set   xworksheet   =   xexcel.sheets.add
xworksheet.name   =   "信访受理详细统计表"

with   xexcel
.activewindow.windowstate   =   xlmaximized
.range("b1").select
.activecell.formular1c1   =   "总计"
.range("c1").select
.activecell.formular1c1   =   "废水"
.range("d1").select
.activecell.formular1c1   =   "废气"
.range("e1").select
.activecell.formular1c1   =   "噪声"
.range("f1").select
.activecell.formular1c1   =   "废渣"
.range("g1").select
.activecell.formular1c1   =   "其他"
.range("a2").select
.activecell.formular1c1   =   "电话(件)"
.range("a3").select
.activecell.formular1c1   =   "投诉(件)"
.range("a4").select
.activecell.formular1c1   =   "来信(件)"
.range("a5").select
.activecell.formular1c1   =   "来访(件)"

end   with
xexcel.visible   =   ture
set   xworksheet   =   nothing
set   xworkbool   =   nothing
set   xexcel   =   nothing

end   sub
发表于:2008-01-22 23:55:201楼 得分:10
你執行了就立即釋放了,沒法彈出了。

你另存,就知道結果了。
发表于:2008-01-23 00:16:242楼 得分:0
应该如何改呢,我刚涉及vba,望指点~谢~
发表于:2008-01-23 08:17:483楼 得分:20
xxx.saveas   "x:\xxxx\xxx.xls"
发表于:2008-01-23 08:26:394楼 得分:40
dim   xexcel           as   object
dim   xworkbook           as   object
dim   xworksheet           as   object

set   xexcel   =   createobject("excel.application")
set   xworkbook   =   xexcel.workbooks.add
set   xworksheet   =   xexcel.sheets.add
xworksheet.name   =   "信访受理详细统计表"

with   xworksheet
.range("b1")   =   "总计"
.range("c1")   =   "废水"
.range("d1")   =   "废气"
.range("e1")   =   "噪声"
.range("f1")   =   "废渣"
.range("g1")   =   "其他"
.range("a2")   =   "电话(件)"
.range("a3")   =   "投诉(件)"
.range("a4")   =   "来信(件)"
.range("a5")   =   "来访(件)"
end   with
xexcel.application.alertbeforeoverwriting   =   false
xworkbook.saveas   filename:="d:\"   &   xworksheet.name   &   ".xls"
xworkbook.close

set   xworksheet   =   nothing
set   xworkbool   =   nothing
set   xexcel   =   nothing
发表于:2008-01-23 09:07:335楼 得分:30
可以不要这些语句,
set       xworksheet       =       nothing  
set       xworkbool       =       nothing  
set       xexcel       =       nothing


这些代码用excel的关闭按钮去完成,等你看了数据不要的时候点excel关闭,自动就释放对象了
发表于:2008-01-23 09:39:046楼 得分:0
楼上的方法能直接保存,但我想让用户点导出按钮让excel自动打开,由用户来决定是否保存,应该如何写呢
发表于:2008-01-23 10:21:337楼 得分:0
  我用     workbooks.open来打开,却提示找不到文件,具体代码如下:

dim       xexcel                       as       object  
dim       xworkbook                       as       object  
dim       xworksheet                       as       object  

set       xexcel       =       createobject("excel.application")  
set       xworkbook       =       xexcel.workbooks.add  
set       xworksheet       =       xexcel.sheets.add  
xworksheet.name       =       "信访受理详细统计表"  

with       xworksheet  
.range("b1")       =       "总计"  
.range("c1")       =       "废水"  
.range("d1")       =       "废气"  
.range("e1")       =       "噪声"  
.range("f1")       =       "废渣"  
.range("g1")       =       "其他"  
.range("a2")       =       "电话(件)"  
.range("a3")       =       "投诉(件)"  
.range("a4")       =       "来信(件)"  
.range("a5")       =       "来访(件)"  

end       with  


workbooks.open   (xworksheet.name)


快速检索

最新资讯
热门点击