首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

把记录集直接转换为Excel文件的程序

2012-01-23 
【分享】把记录集直接转换为Excel文件的程序工作中的副产品,第一版是07年的关键是解决了每次生成Excel文件后

【分享】把记录集直接转换为Excel文件的程序
工作中的副产品,第一版是07年的
关键是解决了每次生成Excel文件后都会有一个Excel进程杀不掉的问题
(有些同学说这样还是杀不掉。。呵呵)

VB code
''根据传入的rst生成一个Excel表格,并保存成一个xls文件Sub CreatexcelFile(ByVal sFileName As String, ByVal rst As ADODB.Recordset)On Error Resume Next''    Dim oExcel As Excel.Application''    Dim oExcelBook As Excel.Workbook''    Dim oExcelSheet As Excel.Worksheet    Dim oExcel    Dim oExcelBook    Dim oExcelSheet        Dim intCol As Long    Dim intRow As Long    Dim intRowAs As Long       If rst Is Nothing Then Exit Sub    Set oExcel = CreateObject("Excel.Application")    Set oExcelBook = oExcel.Workbooks.Add    Set oExcelSheet = oExcelBook.Worksheets(1)        With rst        .MoveFirst        '输出内容        Do While Not .EOF            For intCol = 0 To .Fields.Count - 1                oExcelSheet.Cells(intRow + 1, intCol + 1) = .Fields(intCol).Value            Next intCol            .MoveNext            intRow = intRow + 1        Loop    End With        '关闭所有提示    oExcel.AlertBeforeOverwriting = False    oExcel.PromptForSummaryInfo = False    oExcel.ShowStartupDialog = False        oExcelBook.SaveAs sFileName    '自动杀掉Excel进程    'xlAutoOpen=1;xlAutoClose=2    oExcelBook.RunAutoMacros (1) '运行EXCEL启动宏    oExcelBook.RunAutoMacros (2) '运行EXCEL关闭宏    oExcel.Quit    Set oExcel = Nothing    Set oExcelBook = Nothing    Set oExcelSheet = Nothing         End Sub


[解决办法]
引用楼主 babyt 的帖子:
解决了每次生成Excel文件后都会有一个Excel进程杀不掉的问题。

[解决办法]
确实好像有这问题的,谢谢分享
[解决办法]
支持。。。
[解决办法]
很好刚好有用
[解决办法]
感谢楼主分享。谢谢
[解决办法]
[color=#FFFFFF]华春门[/color]顶~~~
[解决办法]
study
[解决办法]
Mark!
[解决办法]
谢谢。。
[解决办法]
顶顶阿泰同学............

[解决办法]
mark
[解决办法]
帮忙顶...
[解决办法]
感谢了 太好了
[解决办法]
学习了
[解决办法]
我一般是这样写的
VB code
    oExcelBook.SaveAs sFileName    oExcelBook.close    oExcel.Quit    Set oExcelSheet = Nothing    Set oExcelBook = Nothing    Set oExcel = Nothing
[解决办法]
支持
[解决办法]
好帖该顶!义不容辞!



我顶
我再顶 
我用力顶 
我很用力顶 
我非常用力顶 
我用尽全力去顶 
就算鞋子烂也要顶 
就算空间倒闭也要顶 
就算天塌下来我都要顶 
要是天真塌下来了继续顶 


要是地面凹了我不管继续顶 
要是顶到我脚骨折我也继续顶 
要是别人见了骂我傻我还是要顶 
要是警察敢过来阻止我就更加要顶 
要是你看我不爽我没办法还要继续顶 
要是你觉得敢兴趣你也可以过来一起顶 
顶到地下水喷发造成洪灾损失惨重我也顶 
顶到南昌地震山崩地裂地下水泛滥我还要顶 
顶到火山喷发太平洋海啸我还要继续往死里顶 
顶到阎罗王说我制造噪音我刁根烟看看他继续顶 
顶到天昏地暗惊天地泣鬼神我不管我还是要继续顶 
顶到刚刚重建好的伊拉克房屋又倒塌了我不管还要顶 
顶到日本岛所有导弹由于震波影响而突然自爆我还要顶 
顶到正在坐飞机去日本嫖娼的水扁大哥坠机身亡我还要顶 
顶到在富士山上面的拉登同志被山上滑坡石头砸死我还要顶

[解决办法]
quit一下,一般就可以了
[解决办法]
有用JAVA开发的代码吗
[解决办法]
hao 谢谢
[解决办法]
收藏
[解决办法]
mark
[解决办法]
...不好,LZ的保存成xls文件方法不如用ado保存,这样还不用打开excel对象
[解决办法]
没弄明白怎么回事啊
[解决办法]
学习
我常用的方法和你不一样,
[解决办法]
确实好像有这问题的,谢谢分享
[解决办法]
学习了
[解决办法]
学习
[解决办法]
这也是我常用的方法之一,只是比你多了一条标题栏。

VB code
    With rst        .MoveFirst        '字段名           For intCol = 0 To .Fields.Count - 1           oExcelSheet.Cells(intRow + 1, intCol + 1) = .Fields(intCol).name           Next intCol 

热点排行