打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
QueryTable实现EXCEL导出(vb.net)
VB.NET的写法跟VB大同小异,上月31号严重困扰我的DB连接字符串问题已经解决,三个参数都要写。另外,坚持不懈地试验很重要。

    '****************************************************************
    '       名称:fncExporToExcel
    '       功能:导出数据到EXCEL
    '       用法:ExporToExcel(sql查询字符串, 保存路径)
    '****************************************************************
    Private Function fncExportToExcel(ByVal inSQL As String, ByVal inFileName As String)
        Dim oleDbComd As New OleDb.OleDbCommand()
        Dim dataReader As OleDb.OleDbDataReader
        Dim ldbConn As New OleDb.OleDbConnection()

        Dim xlApp As Excel.Application
        Dim xlWorkBook As Excel.Workbook
        Dim xlWorkSheet As Excel.Worksheet
        Dim xlQueryTable As Excel.QueryTable

        On Error Resume Next

        ldbConn.ConnectionString = gdbConn.ConnectionString
        ldbConn.Open()

        xlApp = CreateObject("Excel.Application")
        xlWorkBook = Nothing
        xlWorkSheet = Nothing
        xlWorkBook = xlApp.Workbooks.Add()
        xlWorkSheet = xlApp.Worksheets("sheet1")
        xlApp.Visible = False

        xlQueryTable = xlWorkSheet.QueryTables.Add _
        ("OLEDB;Provider=OraOLEDB.Oracle; _
        Data Source=; _
        User ID=; _
        Password=",xlWorkSheet.Range("A1"), inSQL)

        With xlQueryTable
            .RowNumbers = False
            .FillAdjacentFormulas = False
            .PreserveFormatting = True
            .“refresh”OnFileOpen = False
            .BackgroundQuery = True
            .“refresh”Style = Excel.XlCellInsertionMode.xlInsertDeleteCells
            .SavePassword = True
            .SaveData = True
            .AdjustColumnWidth = True
            .“refresh”Period = 0
            .PreserveColumnInfo = True
        End With

        xlQueryTable.FieldNames = True
        xlQueryTable.“refresh”()
        xlWorkBook.SaveAs(inFileName)

        xlApp.Quit()
        xlApp = Nothing
        xlWorkBook = Nothing
        xlWorkSheet = Nothing
        dataReader.Close()

QueryTables.Add()参数说明:

1、Connection
QueryTables的数据源。用OLE DB的话,是一个连接字符串。参数配置可以从URL链接中找到。

2、Destination
单元格定位。放置QueryTable的左上角坐标。必须是查询表所在的Worksheet。

3、Sql
可选参数。不过貌似我的程序里是必需的。就是SQL查询语句啦!不多说了。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
.NET操作Excel COM对象
使用C#将数据从excel文件中导出实例代码-程序开发-红黑联盟
QTP与word、excel、txt
vb中使用excel对象声明出错时的处理方法
VB打开EXCEL的方法
VB 读取Excel表的内容 |VB 网|VB 视频教程|VB编程入门网
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服